1 2001-06-27 Jody Goldberg <jgoldberg@home.com>
5 2001-06-26 Jody Goldberg <jgoldberg@home.com>
7 * configure.in : restore the zh translations.
9 2001-06-26 Jody Goldberg <jgoldberg@home.com>
11 * src/workbook-control-gui.c (workbook_control_gui_init) : load the ui
12 file from a version specific location.
14 * src/Makefile.am : No need for GNOME_DATADIR anymore.
16 * gnumeric.spec.in : Move the bonobo ui file into a version specific
19 2001-06-25 Jody Goldberg <jgoldberg@home.com>
21 * src/xml-io.c (xml_not_used_old_array_spec) : fix a few warnings.
23 2001-06-23 Almer S. Tigelaar <almer@gnome.org>
25 * src/item-cursor.c (item_cursor_do_drop): Always clear
28 * src/GNOME_Gnumeric.xml: Add missing outline menu items.
30 2001-06-22 Morten Welinder <terra@diku.dk>
32 * src/goal-seek.c (update_data): Prefer absolute lowest y-value in
33 cases where we have only one side of zero.
35 2001-06-21 Morten Welinder <terra@diku.dk>
37 * src/summary.c: #include <string.h> for strlen.
39 * src/search.c (calculate_replacement): Warning killer.
41 * src/regression.c: #include <stdlib.h> for abs.
43 * src/plugin-loader-module.c: #include <string.h> for strcmp.
45 * src/formats.c (cell_format_fraction): Avoid accidental use of
48 * src/complete.c: #include <stdlib.h> for abort.
50 2001-06-21 Almer S. Tigelaar <almer@gnome.org>
52 * src/gnumeric-sheet.c (border_mutate): New, toggles
53 borders around regions.
55 (gnumeric_sheet_key_mode_sheet):
56 Make Ctrl+Backspace center on the active cell.
57 Add support for Locked scrolling with the arrow keys, home and end.
58 Add support for Ctrl+Shift ~, $, %, ^, #, @, !, & and _ shortcut keys
59 for formatting and border mutations.
61 * src/workbook-control-gui.c, src/GNOME_Gnumeric.xml:
62 Change keybinding of Goto Cell from Ctrl+G to F5.
63 Set keybinding of Search&Replace to F6.
64 Set keybinding of Define Names to Ctrl+F3
66 2001-06-20 Almer S. Tigelaar <almer@gnome.org>
68 * src/workbook-control-gui.c (wbcg_claim_selection):
69 Use wbcg->toplevel, not wbcg->table. This fixes
70 copying from Gnumeric to another application.
72 * src/print.c (print_page_cells): Convert scaling percentage
76 (compute_group): Idem.
78 2001-06-20 Jody Goldberg <jgoldberg@home.com>
80 * src/number-match.c (compute_value) : parse 12:xx am correctly.
82 2001-06-19 Jody Goldberg <jgoldberg@home.com>
84 * src/commands.c (cmd_search_replace_do_cell) : Adjust to ref
87 * src/number-match.c (format_match) : do not add a ref to the
90 * src/sheet.c (sheet_cell_set_text) : no need to unref anymore.
91 (sheet_range_set_text) : ditto.
93 * src/cell.c (cell_assign_value) : ref before unref.
94 (cell_eval_content) : Use a simplified assignment to avoid refing and
96 (cell_set_text) : cleanup reference handling.
98 2001-06-19 Morten Welinder <terra@diku.dk>
100 * src/number-match.c (compute_value): Don't g_barf on invalid
103 2001-06-19 Almer S. Tigelaar <almer@gnome.org>
105 * src/item-cursor.c (item_cursor_tip_setstatus): New function.
106 (cb_move_cursor): Call item_cursor_tip_setstatus.
107 (item_cursor_do_drop): Clear the status text.
109 2001-06-19 Morten Welinder <terra@diku.dk>
111 * configure.in: Add derivatives plugin.
112 * plugins/Makefile.am (SUBDIRS_FUNCTIONS): Ditto.
114 * src/plugin.h: Fix includes.
116 2001-06-19 Yukihiro Nakai <nakai@gnome.gr.jp>
118 * configure.in: Re-add ja to ALL_LINGUAS.
120 2001-06-18 Jody Goldberg <jgoldberg@home.com>
122 * src/item-cursor.c (ActionType) : all actions must be > 0.
124 2001-06-17 Jody Goldberg <jgoldberg@home.com>
126 * src/io-context.c (workbook_io_progress_set) : delete update based on
127 styles. This operation leaked and was very expensive.
129 2001-06-18 Almer S. Tigelaar <almer@gnome.org>
131 * src/gnumeric-sheet.c (gnumeric_sheet_key_mode_sheet):
132 Support for end and ctrl+end.
134 * src/workbook-control-gui.c: Add accelerator for
135 formula/value toggling.
137 * src/GNOME_Gnumeric.xml: Add missing accelerator for
138 goto cell and new accelerator for formula/value toggling.
140 2001-06-18 Karl Eichwalder <ke@suse.de>
142 * src/main.c (gnumeric_main): Add missing exclamation mark.
144 2001-06-17 Jody Goldberg <jgoldberg@home.com>
146 * src/sheet-style.c (cb_filter_style) : delete code that is irrelevant
147 now that borders are sane.
148 (sheet_style_get_uniform) : ditto.
150 2001-06-14 Jody Goldberg <jgoldberg@home.com>
152 * src/sheet-control-gui.c (scg_colrow_select) : don't
153 discard input when selecting a range.
155 * src/xml-io.c (xml_write_range) : Add some safety.
157 2001-06-13 Jody Goldberg <jgoldberg@home.com>
159 * src/format.c (render_number) : improve rounding and cleanup.
161 2001-06-12 Jody Goldberg <jgoldberg@home.com>
163 * src/cell.c (cell_cleanout) : call dirty here.
164 (cell_destroy) : not here.
165 (cell_set_text) : or here.
166 (cell_set_value) : or here.
167 (cell_set_expr_and_value) : or here.
168 (cell_set_expr_internal) : or here.
170 2001-06-11 Jody Goldberg <jgoldberg@home.com>
172 * src/print.c (compute_group) : add more error checking to avoid
173 possibility of infinite loop.
175 * src/print-info.c (print_info_new) : init num copies.
177 * src/mathfunc.c (stern_brocot) : move this here from
180 2001-06-13 Morten Welinder <terra@diku.dk>
182 * src/mathfunc.c (gnumeric_add_epsilon): Make non-static.
183 (gpow10): Use table for the range -20 ... +20.
185 2001-06-12 Zbigniew Chyla <cyba@gnome.pl>
187 * src/io-context-priv.h
188 (enum GnumProgressHelperType, struct GnumProgressHelper): Two extra
189 helpers (value, workbook) + changes in count helper), removed min_f and
191 (struct ProgressRange): New.
192 (struct _IOContext): Added progress_ranges, progress_min, progress_max.
195 (enum WbProgressElements): New.
196 (file_io_progress_set, memory_io_progress_set):
197 Removed min_f and max_f arguments.
198 (count_io_progress_set): Added step argument, removed min_f and max_f.
199 (count_io_progress_update): s/value/inc.
200 (io_progress_range_push, io_progress_range_pop,
201 value_io_progress_set, value_io_progress_update,
202 workbook_io_progress_set, workbook_io_progress_update): New.
205 (io_context_init): Initialize extra fields: progress_ranges,
206 progress_min, progress_max.
207 (io_progress_update): Adjust the value, using current range
208 <progress_min, progress_max>.
209 (io_progress_range_push, io_progress_range_pop): New.
210 (file_io_progress_set, memory_io_progress_set):
211 Removed min_f and max_f arguments.
212 (file_io_progress_update, memory_io_progress_update): Don't adjust value
213 to current range, io_progress_update takes care of this.
214 (count_io_progress_set): Added "step" argument, initialize extra
215 struct fields: last, current, step.
216 (count_io_progress_update): Take value increase as an argument, not
217 value itself. Return immediately if value hasn't changed enough.
218 (value_io_progress_set, value_io_progress_update,
219 workbook_io_progress_set, workbook_io_progress_update): New. Two
220 additional helpers, "workbook" should be very useful when saving
223 * src/xml-io.h (struct _XmlParseContext): Removed element_counter.
226 (xml_read_styles, xml_sheet_read): Don't increment element_counter
227 manually, just call count_io_progress_update.
228 (xml_workbook_read): Pass the size of the step to
229 count_io_progress_set, use io_progress_range_{push,pop}.
230 (gnumeric_xml_read_workbook): Use io progress helper of type "value".
232 2001-06-11 Juan Pablo Mendoza <pablo_juan@yahoo.com>
234 * .cvsignore: Add GNOME_Gnumeric.oaf.
236 2001-06-10 Jody Goldberg <jgoldberg@home.com>
238 * src/format.c (format_value) : if no conditions match treat as
239 General, not as empty.
240 (format_compile) : No need to use a catch all condition if there are
243 2001-06-08 Jody Goldberg <jgoldberg@home.com>
245 * src/workbook-control-gui.c (workbook_menu_format_row) : avoid
246 duplicate use of 'H' as accelerator.
247 * src/GNOME_Gnumeric.xml : Ditto.
249 2001-06-08 Almer S. Tigelaar <almer@gnome.org>
251 * src/embeddable-grid.c (grid_view_activate): Use
254 2001-06-07 Jody Goldberg <jgoldberg@home.com>
256 * src/selection.c (sheet_selection_set_internal) : Add some sanity
258 * src/sheet.c (sheet_set_edit_pos) : ditto.
259 (sheet_redraw_cell_region) : ditto.
261 * src/rendered-value.c (cell_get_rendered_text) : We need this for
262 now. There are functions that actualyl rely on the rendered text.
264 2001-06-06 Jody Goldberg <jgoldberg@home.com>
266 * src/gui-file.c (gui_file_open) : There is no point showing the
267 create/delete/rename buttons when loading.
268 (gui_file_import) : and importing.
270 2001-06-07 Almer S. Tigelaar <almer@gnome.org>
272 * src/consolidate.c (retrieve_col_tree): Ignore
274 (retrieve_row_tree): Idem.
275 (key_list_get): Idem.
276 (key_list_free): Burn.
277 (colrow_consolidate): Free the lists directly instead
278 of calling key_list_free.
279 (simple_consolidate): Add flag, we don't want
280 range merge optimizations on simple consolidations.
281 (consolidate_apply): Adjust call to simple_consolidate.
285 2001-06-07 Almer S. Tigelaar <almer@gnome.org>
287 * src/workbook-control.h: Remove MS_ALL as flag
288 and make it a define.
290 * src/workbook-control-gui.c (wbcg_menu_state_update):
291 Remove MS_ALL flag handling.
293 2001-06-07 Almer S. Tigelaar <almer@gnome.org>
295 * src/workbook-control.h: Add MS_CONSOLIDATE.
297 * src/workbook-edit.c (wbcg_edit_attach_guru): Call
298 wb_control_menu_state_update
299 (wbcg_edit_detach_guru): Idem.
301 * src/workbook-control-gui-priv.h: Add consolidation
304 * src/workbook-control-gui.c (wbcg_menu_state_update): Add
305 consolidation menu item.
306 (workbook_control_gui_init): Initialize consolidation
309 2001-06-06 Almer S. Tigelaar <almer@gnome.org>
311 * src/stf.c (stf_read_workbook): Fix warning.
313 2001-06-06 Almer S. Tigelaar <almer@gnome.org>
315 * src/gnumeric.h : Add new GlobalRange.
317 * src/ranges.[ch] (global_range_new): Create a new globalrange.
318 (global_range_free): Free.
319 (global_range_overlap): Utility function.
320 (global_range_dup): Idem.
322 * src/sheet.[ch] (sheet_cell_get_value): New function.
324 * src/workbook-control-gui.c (cb_data_consolidate) :
325 Entry point for the data consolidation dialog.
327 * src/GNOME_Gnumeric.xml : Add consolidate menu item.
329 * src/commands.c (cmd_consolidate) : Undo/redo for consolidate.
330 (cmd_consolidate_destroy) : Idem.
331 (cmd_consolidate_redo) : Idem.
332 (cmd_consolidate_undo) : Idem.
334 * src/consolidate.[ch] : Consolidation low-level code.
336 2001-06-05 Zbigniew Chyla <cyba@gnome.pl>
338 * src/gnumeric-util.[ch] (gnumeric_dialog_file_selection): New
339 function, some code moved from gui-file.c.
341 * src/workbook.[ch] (workbook_get_filename): New accessor function.
344 (gui_file_open): New function.
345 (gui_file_import): Removed fname argument.
348 (gui_file_import): Create and open file selector, using
349 gnumeric_dialog_file_selection to display it. Use one dialog to select
350 file and file format, we don't need glade file anymore. Optionally
351 show all registered openers as importers.
352 (gui_file_save_as): Uses gnumeric_dialog_file_selection. Take
353 workbook's current saver if current_saver is NULL (previously we've
354 been loosing this information), use
355 gnumeric_option_menu_get_selected_index instead of playing with
357 (gui_file_open): New function, some code moved from
358 dialog_query_load_file.
359 (gui_file_save): Always call wb_view_preferred_size.
360 (do_save_as): Take GnumFileSaver as argument.
361 (cb_select, handle_ok, saver_activate, fill_save_menu,
362 make_format_chooser, file_dialog_delete_event, fs_key_event,
363 fs_set_filename): Removed.
365 * src/workbook-control-gui.c
366 (cb_file_new): Just call gui_file_open.
367 (cb_file_import): Call gui_file_import.
368 (workbook_control_gui_init): Initialize current_saver with NULL.
370 2001-06-05 Zbigniew Chyla <cyba@gnome.pl>
372 * src/workbook.c (workbook_new): Slight modification of the previous
375 2001-06-04 Jody Goldberg <jgoldberg@home.com>
377 * src/workbook.c (workbook_new) : Use the extension associated with
378 the default saver as the default extension.
380 2001-06-04 Zbigniew Chyla <cyba@gnome.pl>
382 * src/func.c (function_def_get_full_info_if_needed): Use fn_type to
383 check if we need to get full information.
385 2001-06-04 Almer S. Tigelaar <almer@gnome.org>
387 * src/stf-parse.[ch] : Burn useless comments.
388 (stf_parse_options_csv_set_separators): Change interface.
389 (stf_parse_csv_is_separator): Adjust for interface change.
390 (stf_parse_options_new): Burn modified and old splitpositions.
391 (stf_parse_options_set_type): Constify.
392 (stf_parse_options_set_line_terminator): Idem.
393 (stf_parse_options_set_lines_to_parse): Idem.
394 (stf_parse_options_set_trim_spaces): Idem.
395 (stf_parse_options_csv_set_customfieldseparator): Burn.
396 (stf_parse_options_csv_set_stringindicator): Constify.
397 (stf_parse_options_csv_set_indicator_2x_is_single): Idem.
398 (stf_parse_options_csv_set_duplicates): Idem.
399 (stf_parse_options_fixed_splitpositions_add): Idem.
400 (stf_parse_csv_cell): Cosmetic changes and adjust for
401 change to stf_parse_csv_is_separator, plus use GList.
402 (stf_parse_fixed_cell): Cosmetic changes.
403 (stf_parse_fixed_line): Idem and use GList.
404 (stf_parse_general): Optimize loop and use GList's.
405 (stf_parse_get_rowcount): Cosmetic changes.
406 (stf_parse_get_colcount): Idem.
407 (stf_parse_get_longest_row_width): Idem and fix.
408 (stf_parse_get_colwidth): Idem and fix.
409 (stf_parse_convert_to_unix): Rewrite.
410 (stf_parse_is_valid_data): Idem and constify.
411 (stf_parse_options_fixed_autodiscover): Constify.
412 (stf_parse_sheet): Rewrite.
413 (stf_parse_region): Idem.
415 * src/gui-clipboard.c (x_selection_to_cell_region):
416 Constify return variable from stf_parse_is_valid_data.
418 2001-06-04 Zbigniew Chyla <cyba@gnome.pl>
420 Displaying a question dialog if the user wants to export workbook
421 with many sheets to file format supporting only one.
423 * src/file-priv.h (struct _GnumFileSaver): Added save_scope.
425 * src/file.h (gnum_file_saver_set_save_scope,
426 gnum_file_saver_get_save_scope, enum FileSaveScope): New.
429 (gnum_file_saver_init): Initialize save_scope with FILE_SAVE_WORKBOOK.
430 (gnum_file_saver_set_save_scope, gnum_file_saver_get_save_scope): New.
432 * src/gui-file.c (do_save_as): Optionally display a question dialog if
433 we have many sheets and the saver can save only one.
435 * src/plugin-service.h
436 (struct _PluginServiceFileSaver): Added save_scope.
438 * src/plugin-service.c (plugin_service_file_saver_read,
439 gnum_plugin_file_saver_new): Support save_scope attribute.
441 2001-06-04 Zbigniew Chyla <cyba@gnome.pl>
444 Reverted my last patch to save users' swap-space :-)
446 2001-06-03 Jody Goldberg <jgoldberg@home.com>
448 * src/cellspan.c (cell_calc_span) : do not span expressions
449 because they do not span when recalculated. This will be fixed when
450 just in time rendering is done.
452 2001-06-03 Jody Goldberg <jgoldberg@home.com>
453 From Juan Pablo Mendoza <pablo_juan@yahoo.com>
455 * rendered-value.c (rendered_value_get_text): Add a check for
456 rendered value != NULL.
457 (cell_get_rendered_text): Add check for redered value == NULL
459 2001-06-03 Jody Goldberg <jgoldberg@home.com>
461 * src/workbook.c (workbook_expr_relocate) : flag all sheets as needing
464 2001-06-03 Zbigniew Chyla <cyba@gnome.pl>
466 Updating i/o progress while saving Gnumeric XML file.
469 s/N_ELEMENTS_BETWEEN_UPDATES/N_INPUT_ELEMENTS_BETWEEN_UPDATES
470 (xml_write_cell_and_position): Update i/o progress every
471 N_OUTPUT_ELEMENTS_BETWEEN_UPDATES cells.
472 (xml_write_styles): Ditto for styles.
473 (gnumeric_xml_read_workbook): Better error reporting.
474 (workbook_get_n_elements): Internal function, calculating the number of
475 "elements" (styles and cells) in workbook.
476 (gnumeric_xml_write_workbook): Split saving to three stages: building
477 XML tree, dumping it to memory buffer, saving (compressed) buffer
478 contents to file. Update i/o progress regularly.
479 The second stage still freezes UI though :(
481 2001-06-03 Zbigniew Chyla <cyba@gnome.pl>
483 * src/func.c (function_def_get_full_info_if_needed): Protected against
484 stack overflow. Probably it doesn't really solve the problem though :(
486 2001-06-03 Jody Goldberg <jgoldberg@home.com>
488 * src/cell-draw.c (draw_text) : limit length of cell text to avoid
489 flakey X servers that crash with long strings.
491 * src/clipboard.c (clipboard_paste_region) : be sure to rerender and
492 span if formats change.
494 * src/format.c (format_value) : simplify.
496 2001-06-03 Almer S. Tigelaar <almer@gnome.org>
498 * src/stf.c (stf_write_workbook): Exporting wouldn't work
499 because of wrong changes to the code. Fixed.
500 (stf_parse_csv_cell): Add support for escaped newlines and
502 (stf_parse_options_csv_set_customfieldseparator): Support
504 (stf_parse_options_new): Initialize customfieldseparator.
505 (stf_parse_options_free): Free custom field separator.
506 (stf_parse_csv_is_separator): Handle new string customfield separator.
507 (stf_parse_csv_cell): Idem.
508 (stf_parse_get_colcount): Idem.
509 (stf_parse_get_colwidth): Idem.
511 2001-06-03 Morten Welinder <terra@diku.dk>
513 * src/func.c (function_add_args): Do arg type checking here.
514 (fn_def_new): Not here.
515 (function_remove): Free cached arg types.
516 (function_add_args): Pre-calculate arg counts and types.
517 (function_def_get_full_info_if_needed): Ditto.
518 (function_call_with_list): Use pre-calculated arg counts and
520 (function_add_name_only): Use FUNCTION_NAMEONLY for type.
522 2001-06-03 Jody Goldberg <jgoldberg@home.com>
524 * src/format.c (format_compile) : doh!
525 (format_compile) : Assign the default conditions.
527 2001-06-03 Almer S. Tigelaar <almer@gnome.org>
529 * src/stf-parse.c (stf_parse_get_longest_row_width): Fix.
531 2001-06-03 Almer S. Tigelaar <almer@gnome.org>
533 * src/parse-util.[ch] (row_name): New, converts
534 a row number to a string.
535 (rows_name): Idem, but for a start/end range.
536 (row_name_internal): Utility routine.
538 * src/colrow.c (colrow_string_build): Remove.
539 (colrow_index_list_to_string): Use rows_name
542 * src/cmd-edit.c (cmd_shift_rows): Use rows_name.
544 * src/commands.c (cmd_insert_rows): Idem.
545 (cmd_delete_cols): Beautify.
546 (cmd_delete_rows): Beautify and use rows_name.
548 * src/eval.c (dump_range_dep): Use row_name.
550 * src/item-bar.c (get_row_name): Deprecated, remove.
551 (item_bar_draw): Use row_name.
553 * src/item-cursor.c (item_cursor_tip_setlabel): Idem.
555 * src/item-grid.c (item_grid_draw): Idem.
557 * src/ranges.c (range_name): Idem.
560 * src/selection.c (reference_append): Idem.
561 (selection_get_ranges): Idem.
562 (cb_range_to_string): Idem.
564 * src/sheet-control-gui.c (scg_redraw_cell_region): Idem.
565 (vertical_scroll_offset_changed): Idem.
567 * src/value-sheet.c (value_dump): Idem.
568 (encode_cellref): Idem.
570 2001-06-03 Almer S. Tigelaar <almer@gnome.org>
572 * src/stf-parse.[ch] (stf_cache_options_new): Burn.
573 (stf_cache_options_free): Burn.
574 (stf_cache_options_set_data): Burn.
575 (stf_cache_options_set_range): Burn.
576 (stf_cache_options_invalidate): Burn.
577 (stf_parse_general_cached): Burn.
578 (stf_parse_options_before_modification): Burn.
579 (stf_parse_options_after_modification): Burn.
580 (stf_parse_options_set_type): Don't set modified.
581 (stf_parse_options_set_line_terminator): Idem.
582 (stf_parse_options_set_lines_to_parse): Idem.
583 (stf_parse_options_set_trim_spaces): Idem.
584 (stf_parse_options_csv_set_separators): Idem.
585 (stf_parse_options_csv_set_customfieldseparator): Idem.
586 (stf_parse_options_csv_set_stringindicator): Idem.
587 (stf_parse_options_csv_set_indicator_2x_is_single): Idem.
588 (stf_parse_options_csv_set_duplicates): Idem.
589 (stf_parse_options_valid): Remove modificationmode.
590 (stf_parse_options_new): Idem.
591 (trim_spaces_inplace): Make inline.
592 (stf_parse_csv_is_separator): Idem and move things around
593 a for some more speed.
594 (stf_parse_csv_cell): Make inline.
595 (stf_parse_fixed_cell): Idem.
597 * src/stf.c (stf_read_workbook): Set maximum number of
598 lines to parse to infinite.
599 (x_selection_to_cell_region): Idem.
601 2001-06-02 Jody Goldberg <jgoldberg@home.com>
603 * src/format.c (format_value) : ref the colour.
604 (format_entry_set_fmt) : new function.
605 (format_compile) : parse the conditional values.
607 2001-06-02 Almer S. Tigelaar <almer@gnome.org>
609 * src/sheet.c (sheet_col_row_group_ungroup): Use
610 sc_resize not scg_resize.
612 2001-06-02 Almer S. Tigelaar <almer@gnome.org>
614 * src/commands.[ch] (cmd_group_undo): Implement group undo/redo
615 (cmd_group_redo): Idem.
616 (cmd_group_destroy): Idem.
619 * src/workbook-control-gui.c (cb_data_group): Implement.
620 (cb_data_ungroup): Idem.
621 (group_ungroup_colrow): Utility function to determine if
622 columns or rows need to be grouped/ungrouped.
624 * src/sheet.[ch] (sheet_col_row_group_ungroup): New, high level routine
625 for adjusting outlines.
626 (sheet_col_row_fit_gutter): Dynamically adjust gutter size.
627 (cb_outline_level): Callback for the above.
628 (sheet_col_row_can_group): Query if a range of cols/rows
629 can actually group/ungroup.
630 (sheet_col_row_set_outline_level): Deprecated, remove.
632 * src/colrow.[ch] (colrow_set_outline): Set outline on a col/row.
634 * src/GNOME_Gnumeric.xml: DataOutlineUnGroup change to
637 2001-06-02 Jody Goldberg <jgoldberg@home.com>
639 * src/main.c (handle_paint_events) : be consistent and don't block.
641 * src/io-context.c (io_progress_update) : avoid an infinite loop.
643 2001-06-02 Jody Goldberg <jgoldberg@home.com>
645 * src/format.c (format_compile) : rewrite, not quite done.
647 * src/commands.c (cmd_set_text_undo) : queue a recalc.
648 (cmd_clear_redo) : ditto.
649 * src/corba-sheet.c (Sheet_clear_region) : ditto.
650 (Sheet_clear_region_content) : ditto.
651 * src/gui-clipboard.c (x_selection_handler) : ditto.
652 * src/sheet-merge.c (sheet_merge_add) : ditto.
654 * src/eval.c : switch the depend lists to be singly linked.
655 (dep_slist_filter_sheet) : convenience routine.
656 (dependent_unqueue_sheet) : Used here.
657 (dependent_unlink_sheet) : and here.
659 * src/workbook-control-gui.c (display_formulas) : convert the single
662 2001-06-01 Zbigniew Chyla <cyba@gnome.pl>
664 Support for reporting i/o progress via IOContext.
666 * src/command-context-priv.h (struct CommandContextClass): Added
667 progress_message_set virtual.
669 * src/command-context.[ch] (gnumeric_progress_message_set): New.
671 * src/io-context-priv.h
672 Made IOContext a GtkObject.
673 (enum GnumProgressHelperType, struct GnumProgressHelper): New.
675 * src/io-context.[ch]
676 Made IOContext a GtkObject.
677 (io_progress_update, io_progress_message,
678 file_io_progress_set, file_io_progress_update,
679 memory_io_progress_set, memory_io_progress_update,
680 count_io_progress_set, count_io_progress_update,
681 io_progress_unset): New functions.
682 (gnumeric_io_context_free): Removed, use gtk_object_destroy instead.
684 * src/workbook-control-gui.c (wbcg_progress_message_set): New,
685 implementation of CommandContext virtual.
687 * src/workbook-view.c
688 (wb_view_save_as, wb_view_save, wb_view_open_custom):
689 s/gnumeric_io_context_free/gtk_object_destroy
692 (struct _XmlParseContext): New members (io_context, element_counter) for
696 (xml_read_styles): Update i/o progress every N_ELEMENTS_BETWEEN_UPDATES
698 (xml_sheet_read): Ditto for cells.
699 (xml_get_n_children, xml_read_sheet_n_elements,
700 xml_read_workbook_n_elements): Internal functions, calculating the
701 number of "elements" (styles and cells) in workbook.
702 (xml_workbook_read): Set up io progress to "Processing XML tree" stage.
703 (gnumeric_xml_read_workbook): Load the file into an XML tree using the
704 Push mode and update i/o progress regularly.
707 #include <libgnome/libgnome.h> instead of <gnome.h>.
709 2001-05-31 Jody Goldberg <jgoldberg@home.com>
711 * src/solver-lp.c : Use cell_eval in place of cell_eval_content.
713 * src/eval.c (cb_range_hash_invalidate) : disconnect the list from the
714 dep record while removing its contents. We don't want to modify the
715 list while we are walking it. This is also an optimization in that
716 we don't need to modify the list.
717 (cb_single_hash_invalidate) : ditto.
718 (depsingle_dtor) : Ensure that the list has already been cleared.
719 (deprange_dtor) : ditto.
720 (dependent_unlink) : short circuit if we are destroying.
722 * src/sheet.c (sheet_destroy) : Clear the controls first.
724 2001-05-31 Karl Eichwalder <ke@suse.de>
726 * src/GNOME_Gnumeric.xml: Fix 2 typos.
728 * configure.in: Write gnome.desktop.in.
729 * .cvsignore: Add gnome.desktop.in.
731 2001-05-31 Zbigniew Chyla <cyba@gnome.pl>
733 * workbook-view (wb_view_open_custom): Handle opener errors without
736 2001-05-30 Jody Goldberg <jgoldberg@home.com>
738 * src/value.c (value_error_set_pos) : change name from
739 value_new_error_err since we don't actually new anything.
741 * src/position.c (eval_pos_init_cellref) : delete broken crap.
743 * src/func.c (cb_iterate_cellrange) : duplicate error here.
744 (function_iterate_argument_values) : duplicate the non-terminate
746 * src/collect.c (collect_floats) : not here.
748 2001-05-30 Jon K Hellan <hellan@acm.org>
750 * src/sheet-control-gui-priv.h: New file. Implementation details
751 for SheetControlGUI and methods directly accessible from the GUI
754 * src/Makefile.am: Add sheet-control-gui-priv.h
756 * src/sheet-control-gui.h: Move struct _SheetControlGUI to
757 sheet-control-gui-priv.h. Remove declarations of methods which
758 have been made virtual.
760 * src/sheet-control-gui.c: Include sheet-control-gui-priv.h instead
761 of sheet-control-gui.h.
762 Casts and temp variables because:
763 - virtual scg methods now take a SheetControl parameter.
764 - sheet member now lives in SheetControl.
765 Make following methods static - externally available only as
766 virtual SheetControl method: scg_redraw_all,
767 scg_redraw_cell_region, scg_redraw_headers, scg_update_cursor_pos,
768 scg_resize, scg_unant, scg_ant, scg_cursor_bound,
769 scg_compute_visible_region, scg_make_cell_visible. Initialize
770 class object with these as virtual methods together with
771 scg_set_zoom_factor, scg_adjust_preferences, scg_scrollbar_config
772 and scg_mode_edit. Rename context_menu_hander (sic!) to
773 context_menu_handler.
775 *src/sheet-control.c (SC_VIRTUAL_FULL): Fix typo.
776 (sc_destroy): Comment out unused variable.
777 (sheet_control_init_state): Rename to sc_init_state.
778 (sc_sheet): New accessor - returns sheet attribute.
779 (sc_invalidate_sheet): New function - sets sheet attribute to
781 (resize, set_zoom_factor, redraw_all, redraw_cell_region,
782 redraw_headers, ant, unant, adjust_preferences, update_cursor_pos,
783 scrollbar_config, mode_edit, compute_visible_region,
784 make_cell_visible, cursor_bound): New virtual methods.
786 * src/sheet-control.h: Declare new methods in sheet-control.c
788 * src/selection.c: Use sc_redraw_cell_region, sc_redraw_headers
789 instead of scg methods.
791 * src/sheet.c (sheet_unant): Use sc_unant instead o scg_unant.
792 (sheet_ant): Use sc_ant instead of scg_ant.
793 (sheet_redraw_all): Use sc_redraw_all instead of scg_redraw_all.
794 (sheet_redraw_all): Use sc_redraw_headers instead of
796 (sheet_new_scg): Use sc_cursor_bound instead of scg_cursor_bound.
797 (sheet_detach_scg): Rename to sheet_detach_control. Change
798 parameter from SheetControlGUI to SheetControl. Use sc_sheet and
799 sc_invalidate_sheet instead of direct attribute access.
800 (sheet_set_zoom_factor): Use sc_set_zoom_factor instead of
802 (sheet_update_only_grid): Use sc_compute_visible_region instead of
803 scg_compute_visible_region.
804 (sheet_col_row_gutter): Use sc_resize instead of scg_resize.
805 (sheet_redraw_cell_region, sheet_redraw_partial_row,
806 sheet_redraw_cell): Use sc_redraw_cell_region instead of
807 scg_redraw_cell_region.
808 (sheet_make_cell_visible): Use sc_make_cell_visible instead of
809 scg_make_cell_visible.
810 (sheet_cursor_set): Use sc_cursor_bound instead of
812 (sheet_update_cursor_pos): Use sc_update_cursor_pos instead of
813 scg_update_cursor_pos.
814 (sheet_scrollbar_config): Use sc_scrollbar_config instead of
815 scg_scrollbar_config.
816 (sheet_adjust_preferences): Use sc_adjust_preferences, sc_resize
817 and sc_redraw_all instead of scg_adjust_preferences, scg_resize
820 * src/sheet.h (SHEET_FOREACH_CONTROL): Take list of SheetControls
821 instead of SheetControlGUIs.
823 * src/workbook.c (workbook_sheet_detach): Use sc_mode_edit instead
826 * src/embeddable-grid.h: Include sheet-control-gui-priv.h instead
827 of sheet-control-gui.h.
829 * src/sheet-object-graphic.c: Ditto.
831 * src/gnumeric-sheet.c: Include sheet-control-gui-priv.h instead
832 of sheet-control-gui.h.
833 Casts and temp variables because:
834 - virtual scg methods now take a SheetControl parameter.
835 - sheet now lives in SheetControl.
837 * src/item-bar.c: Ditto.
839 * src/item-cursor.c: Ditto.
841 * src/item-edit.c: Ditto.
843 * src/item-grid.c: Ditto.
845 * src/sheet-object-cell-comment.c: Ditto.
847 * src/sheet-object-cell-container.c: Ditto.
849 * src/sheet-object-item.c: Ditto.
851 * src/sheet-object-widget.c: Ditto.
853 * src/workbook-control-gui.c: Ditto.
855 * src/workbook-object-toolbar.c: Ditto, but don't include
856 sheet-control-gui-priv.h
858 * src/sheet-object.c (sheet_object_realize): Cast control to
861 2001-05-30 Zbigniew Chyla <cyba@gnome.pl>
863 * src/stf.c (stf_init): Register as importer.
865 2001-05-29 Zbigniew Chyla <cyba@gnome.pl>
868 (typedef enum FileProbeLevel) New.
869 (typedef GnumFileOpenerProbeFunc, gnum_file_opener_probe): Added
870 FileProbeLevel argument.
871 (GNUM_FILE_OPENER_CLASS, IS_GNUM_FILE_OPENER_CLASS,
872 GNUM_FILE_SAVER_CLASS, IS_GNUM_FILE_SAVER_CLASS):
873 Macros moved to file-priv.h.
876 (struct _GnumFileOpenerClass::probe):
877 (GNUM_FILE_OPENER_CLASS, IS_GNUM_FILE_OPENER_CLASS,
878 GNUM_FILE_SAVER_CLASS, IS_GNUM_FILE_SAVER_CLASS):
879 Macros moved from file.h.
882 (gnum_file_opener_probe_real, gnum_file_opener_probe):
883 Added FileProbeLevel argument.
885 * src/workbook-view.c
886 (wb_view_open_custom): Iterate over FileProbeLevel values when probing
887 the file (passing current value to probe function).
890 (xml_probe): Added FileProbeLevel argument, testing only file name if
891 probe level == FILE_PROBE_FILE_NAME.
893 * src/plugin-service.c (gnum_plugin_file_opener_probe):
894 Use file_patterns only if probe level == FILE_PROBE_FILE_NAME, otherwise
895 call module's probe function.
897 * src/bonobo-io.c (gnumeric_bonobo_io_probe),
898 src/plugin-service.h (struct _PluginServiceFileOpener),
899 src/plugin-loader-module.c
900 (gnumeric_plugin_loader_module_func_file_probe,
901 struct ServiceLoaderDataFileOpener::module_func_file_probe):
902 Added FileProbeLevel argument.
904 2001-05-27 Jody Goldberg <jgoldberg@home.com>
905 From Juan Pablo Mendoza <pablo_juan@yahoo.com>
907 * gnumeric-util.h (gnumeric_filter_modifiers): New macro.
909 * workbook-control-gui.c (wb_edit_key_pressed): Use it.
910 * gnumeric-sheet.c (gnumeric_filter_modifiers): Ditto.
912 * sheet.c (sheet_name_quote): Escape \ and add more chars to
915 2001-05-27 Jody Goldberg <jgoldberg@home.com>
917 * src/eval.c (sheet_region_queue_recalc) : Queue the dependents in the
918 region not just those that depend on it.
919 (cell_queue_recalc) : no need to queue non expression cells.
921 2001-05-27 Nathan Cullen <furyu@fuse.net>
923 * src/history.c (history_menu_insert_separator): Fixed keyboard
924 navigation problem in non-bonobo build with separator for recently
925 opened files. There was an "invisible" separator item so you needed
926 to arrow down twice to get from "Print Preview" to the first file.
928 2001-05-27 Jody Goldberg <jgoldberg@home.com>
930 * src/expr.c (eval_expr_real) : recurse for arrays too.
931 (expr_tree_array_corner) : rename from expr_tree_array_formula_corner,
932 and return the corner, not the expression in the corner.
934 * src/eval.c (cb_range_hash_invalidate) : invalidate and free things
936 (cb_single_hash_invalidate) : ditto.
937 (do_deps_destroy) : simplify.
939 * src/workbook-control-gui.c (wbcg_sheet_rename) : Use the table not
942 2001-05-27 Zbigniew Chyla <cybs@gnome.pl>
944 * src/plugin-service.c (parse_format_level_str): Fixed typo.
946 2001-05-26 Jody Goldberg <jgoldberg@home.com>
948 * src/sheet.c (colrow_move) : no need to queue recalc here.
949 (cb_sheet_cell_copy) : Actually copy the array values.
951 * src/cell.c (cell_relocate) : Just relink, no need to queue a recalc.
952 (cell_set_array_formula) : Remove the ability to queue the recalc at
953 this level. Just link the formulas in. Reorder the the arguments
954 to match the standard approach.
956 * src/eval.c (workbook_recalc_all) : Used here.
957 (workbook_queue_all_recalc) : new function.
959 * src/xml-io.c (xml_workbook_read) : Queue everything for recalc.
960 (xml_cell_set_array_expr) : no need to queue a recalc here.
962 * src/commands.c (cmd_autofill_redo) : queue the recalc here.
963 (cmd_area_set_text_redo) : we need to manually queue a recalc for
966 * src/sheet.c (sheet_cell_set_text) : we need to queue a recalc for
967 both expressions and values now.
968 (sheet_range_set_text) : queue recalcs for the region as a block.
970 * src/graph-vector.c (graph_vector_new) : Just use dependent_link if
971 we don't want a recalc.
973 2001-05-27 Karl Eichwalder <ke@suse.de>
975 * Run xml-i18n-prepare:
976 * gnumeric.desktop.in: Remove file.
977 * gnumeric.desktop.in.in: New file.
978 * Makefile.am: Adjust it for gnumeric.desktop.in.in.
980 2001-05-26 Jody Goldberg <jgoldberg@home.com>
982 * src/sheet-control-gui.h : typo.
984 2001-05-26 Jon K Hellan <hellan@acm.org>
986 * src/sheet-control-gui.[ch]: Derive from SheetControl rather than
989 * src/gnumeric.h: Add incomplete def of SheetControl.
991 * src/Makefile.am: Add sheet-control.c, sheet-control.h,
994 * src/sheet-control.c: New file. Stub base class for
997 * src/sheet-control.h: Strip down even more from existing stub in
1000 * src/sheet-control-priv.h: New file. Private header for
1003 2001-05-26 Jody Goldberg <jgoldberg@home.com>
1005 * src/format.c (format_number) : suppress minus for "\(" to match "("
1007 2001-05-26 Karl Eichwalder <ke@suse.de>
1009 * src/workbook-control-gui.c: Fix typo.
1011 2001-05-26 Jody Goldberg <jgoldberg@home.com>
1013 * src/cell.c (cell_eval_content) : Use the iteration prefs.
1015 * src/workbook.c (workbook_iteration_tolerance) : new function.
1016 (workbook_iteration_enabled) : ditto.
1017 (workbook_iteration_max_number) : ditto.
1019 2001-05-26 Zbigniew Chyla <cyba@gnome.pl>
1021 * src/gui-file.c (fill_save_menu): If recently used saver has been
1022 removed, use default saver, not the first one.
1025 (unregister_file_opener, unregister_file_opener_as_importer): Fixed
1027 (unregister_file_saver): Fixed stupid bug (and leaks).
1029 * src/plugin-service.h (struct _PluginServiceFileSaver): Added
1030 default_saver_priority field.
1032 * src/plugin-service.c
1033 (plugin_service_file_saver_read): Read "default_saver_priority"
1035 (plugin_service_file_saver_initialize): Register as default saver if
1036 default_saver_priority is non-negative.
1038 2001-05-25 Jody Goldberg <jgoldberg@home.com>
1040 * src/value.c (value_diff) : new routine. This looks ugly. We should
1041 be able to avoid replicating this code.
1043 * src/cell.c (cell_eval_content) : support iteration.
1045 * src/format.c (render_number) : make the buffer big enough.
1046 The assumtion that mantissa and exp are both maxed should leave
1047 enough room for thousand separators.
1049 2001-05-25 Jon K Hellan <hellan@acm.org>
1051 * src/workbook-control-gui.c (wbcg_sheet_add): Bugfix: Connect
1052 button_press_event handler with scg->table as data instead of scg.
1054 2001-05-25 Jody Goldberg <jgoldberg@home.com>
1056 * src/workbook-view.c (wb_view_open_custom) : fix logic to avoid
1057 adding a bogus view.
1059 2001-05-24 Jody Goldberg <jgoldberg@home.com>
1061 * src/eval.c (workbook_recalc) : don't clear the flag until after the
1062 calc is complete in case there is a cycle.
1063 (cell_eval) : ditto.
1065 2001-05-24 Jon K Hellan <hellan@acm.org>
1067 * src/workbook-control-gui.c (sheet_to_page_index): Rename view to
1068 scg. Retrieve it from object data on table.
1069 (sheet_to_page_index):
1070 (wb_control_gui_focus_cur_sheet, cb_sheet_label_button_press,
1071 cb_notebook_switch_page): Retrieve scg from object data on table.
1072 (wbcg_sheet_add): Show and insert in notebook scg->table. scg no
1073 longer is a GtkTable, it has one.
1075 * src/sheet-control-gui.c (scg_parent_class): Change to
1077 (cb_table_destroy): New function. Finish all table and canvas
1078 dependent activities and set scg->table, scg->canvas to NULL.
1079 (scg_init): Don't create table here.
1080 (scg_construct): ..but here. Change terminology. Old: outer_table,
1081 table. New: scg->table, inner_table. Add scg to scg->table as
1082 object data. Add a destroy callback to scg->table.
1083 (scg_destroy): Move parts to cb_table_destroy. Unref table if not
1085 (scg_class_init, GNUMERIC_MAKE_TYPE): Inherit from GtkObject
1086 instead of GtkTable.
1087 (scg_cursor_visible): Be prepared for scg->canvas being NULL
1089 * src/sheet-control-gui.h (struct _SheetControlGUI,
1090 SheetControlGUIClass): Inherit from GtkObject instead of GtkTable.
1092 2001-05-24 Jody Goldberg <jgoldberg@home.com>
1094 * src/workbook.c (workbook_enable_recursive_dirty) : new function.
1095 * src/workbook-private.c (workbook_private_init) : Init
1096 recursive_dirty_enabled.
1097 * src/sheet.c (sheet_cell_remove) : Use recursive_dirty_enabled.
1098 * src/eval.c (dependent_changed) : ditto.
1100 * src/workbook-view.c (wb_view_open_custom) : while loading disable
1101 recursive depend dirtying. We are loading everything it is up to
1102 the loader to handle the queuing correctly (either queuing all, or
1103 just those necessary)
1105 2001-05-23 Jody Goldberg <jgoldberg@home.com>
1107 * src/sheet.c (sheet_cell_destroy) : optionally queue the dependents
1108 of this cell for recalc.
1110 2001-05-23 Jody Goldberg <jgoldberg@home.com>
1112 * src/eval.c (dependent_changed) : Use cb_dependent_queue_recalc to
1113 recursively queue the depends.
1116 if we do not recurse the assignment of '=3' would queue B1 but not A1
1118 2001-05-22 Jody Goldberg <jgoldberg@home.com>
1120 * gnumeric.spec.in : bump version of libole2
1122 * configure.in : ditto.
1124 2001-05-19 Jody Goldberg <jgoldberg@home.com>
1126 * src/workbook.c (workbook_is_pristine) : no need to check the recalc
1127 queue. If there are no dependents there is nothing to put on the
1130 * src/func.c (cb_iterate_cellrange) : rename from
1131 iterate_cellrange_callback remove 'generation' mechanism.
1133 * src/cell.c (cell_cleanout) : Clear both recalc flags,
1135 (cell_copy) : ditto.
1136 (cell_eval_content) : No need to render the value. assign_value
1138 (cell_content_changed) : deleted.
1140 * src/Makefile.am : merge dependent.[ch] into eval.[ch]
1142 2001-05-18 Jody Goldberg <jgoldberg@home.com>
1144 * src/eval.c : reorg and merged with dependent.[ch]
1146 * src/sheet.c (sheet_cell_set_text) :
1147 s/cell_content_changed/cell_queue_recalc/
1148 (sheet_cell_set_expr) : ditto.
1149 (sheet_cell_set_value) : ditto.
1150 (colrow_move) : ditto.
1151 (sheet_destroy_contents) :
1152 s/dependent_unqueue_recalc_sheet/dependent_unqueue_sheet/
1154 * src/cmd-edit.c (cmd_select_cur_row) : Make behavior match XL.
1155 (cmd_select_cur_col) : Make behavior match XL.
1157 * src/format.c (render_number) : avoid temporaries.
1158 (do_render_number) : ditto.
1160 2001-05-17 Jody Goldberg <jgoldberg@home.com>
1162 * src/expr.c (eval_range) : delete.
1163 (eval_expr_real) : Use workbook_foreach_cell_in_range rather than
1164 range_eval. Remove 'generation' mechanism.
1165 (cb_range_eval) : a simple pass through
1167 * src/eval.c (sheet_region_recalc_deps) : rename from
1168 sheet_recalc_dependencies and merge in sheet_region_get_deps.
1169 Use the new foreach style interfaces.
1170 (cb_single_recalc_all_depends) : rename from cb_single_get_all_depends
1172 (cb_range_recalc_all_depends) : rename from cb_sheet_get_all_depends and simplify.
1173 (cb_dependent_queue_recalc) : new wrapper.
1174 (cb_region_contained_depend) : renamed from search_range_deps and simplify.
1175 (cell_foreach_dep) : rename from cell_get_dependencies and switch to
1176 an in place api rather than creating a list.
1177 (cell_foreach_single_dep) : switch to in place api
1178 (cell_foreach_range_dep) : ditto.
1179 (search_cell_deps) : ditto.
1180 (cell_recalc_deps) : ditto.
1181 (cell_eval) : ditto.
1182 (cb_generation_queue) : new utility.
1184 * src/dependent.c (dependent_list_filter) : delete.
1186 * src/cmd-edit.c (cb_collect_deps) : new function split from.
1187 (cmd_select_cur_depends) : here. So that we can use the new depend
1190 * src/sheet.c (sheet_move_range) : use sheet_region_recalc_deps.
1191 (sheet_{insert,delete}_{cols,rows}) : ditto.
1192 (sheet_cell_remove_simple) : Use in place depend interface.
1194 * src/cell.c (cell_content_changed) : Use in place depend interface.
1195 * src/clipboard.c (clipboard_paste_region) : ditto.
1196 * src/commands.c (cmd_area_set_text_redo) : ditto.
1197 (cmd_autofill_redo) : ditto.
1199 2001-05-21 Jody Goldberg <jgoldberg@home.com>
1201 * Makefile.am : remove gnorba and modernize a bit.
1203 2001-05-23 Zbigniew Chyla <cyba@gnome.pl>
1205 * src/plugin-service.c
1206 (struct _InputFilePattern): Added "case_sensitive" field.
1207 (gnum_plugin_file_opener_probe): Support "case_sensitive" attribute when
1208 checking if file name matches the pattern.
1209 (plugin_service_file_opener_read): Support "case_sensitive" attribute.
1210 Now matching is case _insensitive_ by default.
1212 2001-05-23 Zbigniew Chyla <cyba@gnome.pl>
1214 * src/bonobo-io.c, src/clipboard.c, src/file.c, src/plugin.c,
1215 src/sheet-object.c, src/stf.c, src/workbook.c:
1216 Removed #include "xml-io.h".
1218 * src/dialogs/dialog-plugin-manager.c (gnumeric_dialog_question_yes_no):
1221 * src/gnumeric-util.[ch]: ... here.
1224 (gui_file_import): Sorting file importers.
1225 (fill_save_menu): Sorting file savers, function simplified (doesn't use
1226 file_saver_is_default_format).
1227 (can_try_save_to): Function simplified, uses
1228 gnumeric_dialog_question_yes_no from gnumeric-util.h, default answer
1229 for question about overwriting a file is configurable.
1231 2001-05-22 Almer S. Tigelaar <almer@gnome.org>
1233 * src/xml-io.c : Bump XML version number.
1234 (xml_workbook_write): Write index of sheet names
1235 at the beginning of the file and always write
1236 latest version number.
1238 2001-05-22 Jon K Hellan <hellan@acm.org>
1240 * src/workbook-edit.c (wbcg_editing_expr): Use renamed function
1241 gnumeric_expr_entry_rangesel_meaningful.
1243 2001-05-22 Zbigniew Chyla <cyba@gnome.pl>
1246 (gnum_file_opener_setup, gnum_file_opener_new, gnum_file_opener_probe,
1247 gnum_file_opener_open, gnum_file_saver_setup, gnum_file_saver_new,
1248 gnum_file_saver_save, gnum_file_saver_fix_file_name,
1249 register_file_opener, register_file_opener_as_importer,
1250 unregister_file_opener, unregister_file_opener_as_importer,
1251 register_file_saver, register_file_saver_as_default,
1252 unregister_file_saver, get_default_file_saver,
1253 get_file_opener_by_id, get_file_saver_by_id,
1254 get_file_savers, get_file_openers, get_file_importers):
1255 Added gtk-doc style documentation.
1256 (struct _GnumFileOpener, struct _GnumFileOpenerClass,
1257 struct _GnumFileSaver, struct _GnumFileSaverClass): Removed structs
1258 already defined in file-priv.h.
1261 (wb_view_save_as, wb_view_save, wb_view_open, wb_view_open_custom):
1262 Added gtk-doc style documentation.
1265 (gnum_file_opener_setup, gnum_file_saver_setup): Declarations moved ...
1267 * file-priv.h: ... here
1269 2001-05-21 Jon K Hellan <hellan@acm.org>
1271 * src/workbook-control-gui-priv.h (struct _WorkbookControlGUI):
1272 Add toolbar_is_sensitive member.
1274 * src/workbook-control-gui.c (workbook_control_gui_init):
1275 Initialize wbcg->toolbar_is_sensitive.
1277 * src/workbook-edit.c (workbook_edit_toolbars_set_sensitive): Use
1278 wbcg->toolbar_is_sensitive instead of static is_sensitive.
1280 2001-05-21 Zbigniew Chyla <cyba@gnome.pl>
1282 Cleaned up file i/o interface.
1284 * src/Makefile.am: Added file-priv.h.
1287 Made GnumFileOpener and GnumFileSaver GtkObjects with virtual probe,
1288 open and save methods.
1289 New GnumFileOpener methods: get_id.
1290 New GnumFileSaver methods: get_id, fix_file_name.
1291 New functions: register_file_opener, register_file_opener_as_importer,
1292 unregister_file_opener, unregister_file_opener_as_importer,
1293 register_file_saver, register_file_saver_as_default,
1294 unregister_file_saver, get_default_file_saver,
1295 get_file_opener_by_id, get_file_saver_by_id,
1296 get_file_savers, get_file_openers, get_file_importers.
1298 * src/file-priv.h: New file with definitions of structs:
1299 _GnumFileOpener, _GnumFileOpenerClass, _GnumFileSaver,
1300 _GnumFileSaverClass.
1303 (struct _Workbook): Added file_saver_sig_id field.
1304 s/FileSaver/GnumFileSaver/
1305 (workbook_get_file_saver): New accessor function.
1308 (cb_saver_destroy_event, workbook_destroy, workbook_set_saveinfo):
1309 When setting new file_saver, connect to its "destroy" signal and
1310 set file_saver to NULL in signal handler. Disconnect when changing file
1311 saver or destroying the workbook.
1312 (workbook_get_file_saver): New accessor function.
1313 (workbook_persist_file_load): Use wb_view_open instead of
1315 (workbook_persist_file_save): Use wb_view_save_as instead of calling
1316 gnumeric_xml_write_workbook directly.
1318 * src/workbook-view.[ch]
1319 (wb_view_set_attributev): Renamed to wb_view_set_attribute_list and
1321 (wb_view_save_as, wb_view_save, wb_view_open, wb_view_open_custom): New
1322 methods (some code moved from file.c).
1324 * src/gnumeric-sheet.c (gnumeric_sheet_filenames_dropped):
1325 Use wb_view_open() instead of workbook_try_read()+file_finish_load().
1328 (gui_file_import): Use get_file_importers(). Use
1329 wb_view_open_custom() instead of file_opener_open() + manual creation
1330 of wb_view, error checking, etc.
1331 (is_saver_registered): Removed.
1332 (saver_activate): Don't check if saver is really registered.
1333 (file_saver_is_default_format): Use get_default_file_saver() instead
1334 of strcmp(extension, "gnumeric") hack.
1335 (do_save_as): Use gnum_file_saver_fix_file_name().
1336 Adjusted everything to file.h, workbook.h, workbook-control.h.
1338 * src/gui-file.h (gui_file_import): Signature change, now function
1341 * src/gutils.[ch] (g_list_index_custom): New function.
1343 * src/history.c (file_history_cmd), src/main.c (gnumeric_main),
1344 src/workbook-control-gui.c (cb_file_open): Use wb_view_open()
1345 instead of workbook_read().
1347 * src/workbook-control-gui-priv.h (struct _WorkbookControlGUI):
1348 s/FileSaver/GnumFileSaver/
1350 * src/plugin-service
1351 Created GnumPluginFileOpener and GnumPluginFileSaver classes (derived
1352 from GnumFileOpener and GnumFileSaver respectively). Moved contents of
1353 plugin_service_file_opener_probe_func,
1354 plugin_service_file_opener_open_func,
1355 plugin_service_file_saver_save_func into
1356 gnum_plugin_file_opener_probe, gnum_plugin_file_opener_open,
1357 gnum_plugin_file_saver_save methods (slightly modified).
1358 (plugin_service_file_opener_read): Read "open" and "import" attributes
1360 (plugin_service_file_opener_initialize,
1361 plugin_service_file_opener_cleanup): Register/unregister created
1362 file opener (GnumPluginFileOpener object) as normal opener and/or
1363 importer depending on "open" and "import" XML attributes.
1364 (plugin_service_file_opener_initialize,
1365 plugin_service_file_opener_cleanup): Register/unregister created
1366 file saver (GnumPluginFileSaver object).
1368 * src/plugin-service.h
1369 (struct _PluginServiceFileOpener):
1370 Added can_open and can_import fields.
1371 s/FileOpener/GnumFileOpener/
1372 (struct _PluginServiceFileSaver):
1373 s/FileSaver/GnumFileSaver/
1375 * src/plugin-loader-module.c
1376 (struct ServiceLoaderDataFileOpener, struct ServiceLoaderDataFileSaver),
1377 gnumeric_plugin_loader_module_func_file_probe,
1378 gnumeric_plugin_loader_module_func_file_open,
1379 gnumeric_plugin_loader_module_func_file_save):
1380 s/FileOpener/GnumFileOpener/
1381 s/FileSaver/GnumFileSaver/
1384 (stf_read_workbook, stf_write_workbook): Signature change
1385 (don't return gboolean).
1386 (stf_init): Adjusted to file i/o interface changes.
1389 (gnumeric_xml_get_opener, xml_probe):
1390 s/FileOpener/GnumFileOpener/
1391 (gnumeric_xml_get_saver):
1392 s/FileSaver/GnumFileSaver/
1393 (gnumeric_xml_read_workbook, gnumeric_xml_write_workbook): Signature
1394 change (don't return gboolean).
1395 (xml_init): Adjusted to file i/o interface changes.
1398 (gnumeric_bonobo_read_workbook, gnumeric_bonobo_write_workbook):
1399 Signature change (don't return gboolean).
1400 s/FileOpener/GnumFileOpener
1401 s/FileSaver/GnumFileSaver
1402 (gnumeric_bonobo_io_probe):
1403 s/FileOpener/GnumFileOpener
1404 (gnumeric_bonobo_io_init): Adjusted to file i/o interface changes.
1406 2001-05-20 Chema Celorio <chema@celorio.com>
1408 * src/sheet-control-gui.c (set_acetate_coords): make sure the accetate
1409 honors the direction of the object.
1411 2001-05-20 Chema Celorio <chema@celorio.com>
1413 * src/sheet-object.c (sheet_object_init): initialize the so->direction
1415 (sheet_object_direction_set): impl.
1416 (sheet_object_rubber_band_directly): impl a small convenience function
1417 to get the value of SO_CLASS(so)->rubber_band_directly
1419 * src/sheet-object-widget.c (sheet_widget_checkbox_construct_with_range):
1420 add a label argument to also optionaly specify a label
1421 (sheet_widget_checkbox_clone): when cloning a checkbox, copy it's value
1423 add a ->label and rename ->entry to ->expresion in CheckboxConfigState
1424 (cb_checkbox_label_changed): impl.
1425 (sheet_widget_checkbox_user_config): add an entry for the label of
1427 (sheet_widget_checkbox_set_sheet): call _set_active when setting the
1430 * src/sheet-object-impl.h: add the SheetObjectDirection enums
1431 add ->direction to SheetObject
1432 add ->rubber_band_directly to SheetObjectClass
1434 * src/sheet-object-graphic.c (sheet_object_graphic_read_xml): read
1435 the object's direction
1436 (sheet_object_graphic_write_xml): save the direction of the object
1437 (sheet_object_graphic_class_init): so->direction = TRUE
1438 (sheet_object_graphic_init): initlalize so->direction
1440 * src/sheet-control-gui.c (scg_object_move): calculate the new direction
1441 of the object when moving a handle.
1442 (scg_object_view_position): the coordinates of the object depend on
1443 it's ->direction now.
1445 * src/item-grid.c (cb_obj_create_motion): if we are rubberbanding directly,
1446 calculate the sheet object direction and position.
1447 (cb_obj_create_button_release): only set the sheet if we are not rubber_banding_
1448 direcly. Objects that are rubber banded directly have already been attached to
1450 (sheet_object_begin_creation): if we are rubber_banding_direclty the object,
1451 attach it to a sheet.
1453 * src/sheet-object-widget.c (sheet_widget_checkbox_destroy): check if
1454 the dependent has been linked before unlinking. We might have created
1455 the object without attaching it to a sheet.
1457 2001-05-21 Jody Goldberg <jgoldberg@home.com>
1459 * src/gnumeric-sheet.c (gnumeric_sheet_key_mode_sheet) : revert
1462 2001-05-18 Jody Goldberg <jgoldberg@home.com>
1464 * src/format.c (render_number) : avoid temporaries.
1465 (do_render_number) : ditto.
1467 2001-05-18 Jody Goldberg <jgoldberg@home.com>
1469 * configure.in : bump version to 0.66.
1471 2001-05-20 Jody Goldberg <jgoldberg@home.com>
1475 2001-05-20 Jody Goldberg <jgoldberg@home.com>
1477 * configure.in : Remove ja, ko, zh* from ALL_LINGUAS until the po
1480 2001-05-20 Zbigniew Chyla <cyba@gnome.pl>
1482 * src/sheet-object.c (sheet_object_read_xml): Fixed leaks.
1484 2001-05-20 Zbigniew Chyla <cyba@gnome.pl>
1486 * src/plugin.c (plugin_db_init): Last patch changed behaviour from
1487 "treat every plugin as known" to "treat every plugin as unknown" :-)
1488 Now it should be really fixed.
1490 2001-05-19 Almer S. Tigelaar <almer@gnome.org>
1492 * src/workbook-edit.c (wbcg_edit_attach_guru):
1493 Guard against two anted region on the same sheet.
1495 2001-05-19 Jody Goldberg <jgoldberg@home.com>
1497 * src/plugin.c (plugin_db_extend_saved_active_plugin_id_list) : Merge
1498 into plugin_db_init.
1499 (plugin_db_init) : Find the unknown plugins not the known plugins.
1500 Remove the list of plugins that default to on.
1501 Fix the use of gnome_config.
1503 2001-05-19 Jody Goldberg <jgoldberg@home.com>
1505 * gnumeric.spec.in : update GAL req.
1506 * configure.in : ditto.
1509 * src/GNOME_Gnumeric.xml : Fix the accelerators to use xkeysym names
1510 rather than the physical key for slash and space.
1512 * src/plugin.c (plugin_db_init) : Enable new plugins by default.
1514 2001-05-17 Jody Goldberg <jgoldberg@home.com>
1516 * src/sheet-style.c (cell_tile_apply_pos) : Add more sanity checking.
1518 2001-05-16 Jody Goldberg <jgoldberg@home.com>
1520 * src/item-bar.c (is_pointer_on_division) : Use
1521 wbcg_rangesel_possible.
1522 * src/item-grid.c (item_grid_button_1) : ditto.
1523 * src/gnumeric-sheet.c (gnumeric_sheet_key_mode_sheet) : ditto.
1524 * src/sheet-control-gui.c (scg_select_all) : ditto.
1525 (scg_colrow_select) : ditto.
1526 (scg_construct) : ensure we start with focus.
1527 (scg_rangesel_possible) : move from here.
1529 * src/workbook-control-gui.c (wbcg_rangesel_possible) : to here.
1530 (cb_notebook_switch_page) : expand the logic slightly to correct gurus.
1532 * src/workbook-edit.c (wbcg_edit_finish) : always check for rangesel.
1534 * src/parse-util.c (gnumeric_char_start_expr_p) : improve handling of
1537 2001-05-16 Jody Goldberg <jgoldberg@home.com>
1539 * src/workbook-edit.c (wbcg_edit_finish) : stop the current rangesel,
1540 not rangesel on the current display sheet.
1542 * src/workbook-control-gui.c (cb_notebook_switch_page) : simplify and
1543 use the new wbcg::rangesel to make things easier.
1544 (workbook_control_gui_init) : init the new flag.
1546 * src/sheet-control-gui.c (scg_rangesel_start) : store the scg doing
1547 the rangesel in the wbcg.
1548 (scg_rangesel_stop) : clear it here.
1550 2001-05-15 Jody Goldberg <jgoldberg@home.com>
1552 * src/sheet.c (sheet_stop_range_selection) : delete.
1554 * src/commands.c (cmd_paste_copy) : call splits_region to check for
1555 partial arrays and merged regions.
1557 * src/sheet.c (cb_set_cell_content) : Use the bounding box.
1558 (sheet_range_set_text) : set the bounding box.
1560 2001-05-15 Jon K Hellan <hellan@acm.org>
1562 * src/workbook-control.h: Define menu state enums for print setup,
1563 search/replace and define names and a define for the lot.
1565 * src/workbook-control-gui-priv.h (struct _WorkbookControlGUI):
1566 Add menu_item_print_setup, menu_item_search_replace,
1567 menu_item_define_name members.
1569 * src/workbook-edit.c (workbook_edit_attach_guru,
1570 workbook_edit_detach_guru): Update Update print setup,
1571 search/replace and define names sensitivity according to whether
1572 or not we have guru.
1574 * src/workbook-control-gui.c (wbcg_menu_state_update): Ditto. This
1575 is where it's actually implemented.
1577 2001-05-15 Almer S. Tigelaar <almer@gnome.org>
1579 * src/sheet-control-gui.c (vertical_scroll_offset_changed): Sync
1580 for adjustment to scrollbars.
1581 (horizontal_scroll_offset_changed): Idem.
1583 2001-05-14 Jody Goldberg <jgoldberg@home.com>
1585 * src/sheet-control-gui.c (vertical_scroll_offset_changed) : reinstate
1586 this and optionally support delayed scrolling.
1587 (horizontal_scroll_offset_changed) : ditto.
1588 (scg_construct) : reinstate.
1590 * src/expr.c (cellref_boundingbox) : new function.
1591 (expr_tree_boundingbox) : implement.
1593 2001-05-14 Almer S. Tigelaar <almer@gnome.org>
1595 * src/colrow.c (rows_height_update): Add shrink flag.
1596 (cb_autofit_height_no_shrink): Callback function for new
1597 autofit without shrinking functionality.
1599 * src/commands.c (cmd_paste_cut_redo): Adjust for change
1600 to rows_height_update.
1601 (cmd_paste_copy_undo): Idem.
1602 (cmd_autoformat_undo): Idem.
1603 (cmd_format_undo): Idem.
1605 * src/clipboard.c (clipboard_paste_region): Idem.
1607 * src/sheet.c (sheet_clear_region): Idem.
1608 (sheet_apply_style): Idem.
1610 2001-05-14 Almer S. Tigelaar <almer@gnome.org>
1612 * src/commands.c (cmd_paste_copy_impl): New, contains
1613 what was previously in cmd_paste_copy_undo.
1614 (cmd_paste_copy_undo): Call upon cmd_paste_copy_impl.
1615 (cmd_paste_copy_redo): Idem.
1616 (cmd_paste_copy): Remove initialization of me->is_undo flag,
1617 the flag has been burned.
1619 2001-05-14 Almer S. Tigelaar <almer@gnome.org>
1621 * configure.in: Bump GAL version requirement to 0.7.99.5
1623 * src/workbook-format-toolbar.c (cb_back_color_changed): Add
1624 by_user flag handling and sync the combo's on all other views
1625 if the color changes.
1626 (cb_fore_color_changed): Idem.
1627 (workbook_create_format_toolbar): Pass workbook view's to
1628 color_group_fetch and sync the colors of the back and fore combo's
1629 with the other views on creation.
1631 2001-05-14 Miguel de Icaza <miguel@ximian.com>
1633 * src/sheet-control-gui.c: Removed support routines that used the
1634 Excel-like toolbar. I got fed up with it.
1635 (scg_construct): Use regular Gtk scrollbars. Connect to value
1636 changed to reflect the state of the scrollbar on the spreadsheet
1637 inmediately instead of doing the broken Excel behaviour.
1638 That is one feature I cloned that was totally idiotic.
1640 2001-05-13 Almer S. Tigelaar <almer@gnome.org>
1642 * src/workbook-control-gui.c (wbcg_error_splits_array):
1645 2001-05-13 Almer S. Tigelaar <almer@gnome.org>
1647 * src/colrow.c (colrow_save_sizes): Use float.
1648 (colrow_restore_sizes): Use float.
1649 (colrow_restore_sizes_group): Walk the selections
1650 in parallel with the saved_sizes. Now this will
1651 actually work for variabele size multiple selections.
1653 * src/commands.c (cmd_paste_copy_undo): Use the new
1654 is_undo flag. We need this to properly set and restore
1656 (cmd_paste_copy_redo): Set is_undo to false.
1657 (cmd_paste_copy): Init is_undo flag.
1659 * src/commands.c (cmd_resize_colrow): Correct descriptor
1662 2001-05-13 Jody Goldberg <jgoldberg@home.com>
1664 * src/clipboard.c (clipboard_paste_region) : Use the new CLEAR_NORESPAN
1665 flag. It is premature to respan the content of surrounding cells.
1666 That should only happen AFTER the new content goes in.
1668 * src/sheet.c (sheet_cell_calc_span) : check for spans into this cell
1669 even if this cell is a merged cell.
1670 (sheet_clear_region) : Make the respan conditional on a new flag.
1672 * src/workbook-control-gui.c (cb_change_zoom) : Always update the zoom
1673 combo in case the entry does not match what was used.
1675 * src/commands.c (cmd_clear_selection) : only print warning once.
1676 (cmd_clear_undo) : There is no undo for pasting comments.
1677 (cmd_paste_copy) : doh! We can not print the name of the target range,
1678 it is out of bounds!
1679 (cmd_paste_cut) : ditto.
1681 * src/item-grid.c (item_grid_draw) : If everything is hidden we can
1682 get into odd states.
1684 * src/expr.c (eval_expr_real) : New peek code generated some spurious
1685 errors when concatenating blanks.
1687 2001-05-12 Jody Goldberg <jgoldberg@home.com>
1688 From Juan Pablo Mendoza <pablo_juan@yahoo.com>
1690 * src/workbook-control-gui.c (show_gui) : remove -64 limit.
1692 2001-05-11 Jody Goldberg <jgoldberg@home.com>
1694 * src/application.c (application_real_time_auto_expr_recalc) : new
1697 * src/sheet.c (auto_expr_timer_clear) : new function.
1698 (sheet_update) : toggle the selection_content_changed flag here and
1699 use a timer rather than an idle handler.
1701 * src/workbook-edit.c (wbcg_edit_ctor) : Init the sensitivity timer.
1703 * src/workbook-control-gui.c (workbook_setup_edit_area) : Use
1705 (wbcg_destroy) : use wbcg_edit_dtor.
1707 * src/main.c (gnumeric_main) : setlocale (LC_ALL, NULL) to force
1708 initialization of LC_* from the environment.
1710 2001-05-11 Jon K Hellan <hellan@acm.org>
1712 * src/sheet-control-gui.c (scg_rangesel_changed): Improve handling
1713 of merged cells. Freeze expr entry display until final range is found.
1715 2001-05-10 Jody Goldberg <jgoldberg@home.com>
1717 * src/workbook.c (workbook_sheet_delete) : Clear the combos as well as
1720 * src/workbook-view.c (wb_view_selection_desc) : intelligent naming.
1722 2001-05-10 Morten Welinder <terra@diku.dk>
1724 * src/main.c (gnumeric_main): Complain if binary is more than 180
1727 2001-05-10 Almer S. Tigelaar <almer@gnome.org>
1729 * src/commands.c (cmd_paste_cut_undo): Restore
1730 row heights after undo.
1731 (cmd_paste_cut_redo): Backup row heights.
1732 (cmd_paste_cut_destroy): Destroy saved sizes.
1733 (cmd_paste_cut): Initialize saved sizes.
1734 (cmd_paste_copy_undo): Save and restore row heights.
1735 (cmd_paste_copy_destroy): Destroy saved sizes.
1736 (cmd_paste_copy): Initialize saved sizes.
1738 2001-05-09 Jody Goldberg <jgoldberg@home.com>
1740 * src/xml-io.c (xml_read_selection_info) : typo. Use the child not
1742 (xml_write_selection_info) : Save the real position.
1744 * src/sheet.c (sheet_new_scg) : set cursor bound, not the details.
1745 (sheet_cursor_set) : add some sanity checks.
1746 (sheet_clone_selection) : use the real edit_pos.
1748 2001-05-09 Jody Goldberg <jgoldberg@home.com>
1750 * src/item-cursor.c (cb_move_cursor) : typo.
1752 * src/cmd-edit.c (cmd_shift_cols) : correct bound if shifting right.
1753 (cmd_shift_rows) : correct bound if shifting down.
1755 * src/gnumeric-sheet.c (gnumeric_sheet_make_cell_visible) : If the
1756 first == last then it is likely we are uninitialized and we can
1757 start the search from the first the target may be contained in the
1758 current region without scrolling.
1760 * src/sheet-control-gui.c (scg_construct) : resize is now called when
1761 attached and the zoom scg_set_zoom_factor is set.
1762 (scg_set_zoom_factor) : resize.
1764 * src/workbook-control.c (workbook_control_init_state) : cut-n-paste-o.
1766 2001-05-08 Jody Goldberg <jgoldberg@home.com>
1768 * src/selection.c (sheet_selection_set_internal) : split this out into.
1769 * src/sheet-merge.c (sheet_merge_find_container) : here.
1770 * src/sheet-control-gui.c (scg_rangesel_changed) : and here.
1772 2001-05-08 Jody Goldberg <jgoldberg@home.com>
1774 * src/xml-io.c (xml_read_selection_info) : Use sheet_set_edit_pos.
1776 * src/selection.c (sheet_selection_extend) : merge into
1779 * src/sheet-control-gui.c (scg_cursor_move_to) : rename from
1781 (scg_cursor_extend) : merge scg_cursor_extend_[hv]
1782 (scg_cursor_move) : merge scg_cursor_move_[hv]
1783 (scg_rangesel_extend) : merge scg_rangesel_extend_[hv]
1784 (scg_rangesel_move) : merge scg_rangesel_move_[hv]
1785 (scg_rangesel_start) : cleanup.
1787 * src/gnumeric-sheet.c (gnumeric_sheet_key_mode_sheet) : fix handling
1788 of Home. Simplify the function pointers for move vs extend by
1789 merging horizontal and vertical versions.
1791 2001-05-08 Jody Goldberg <jgoldberg@home.com>
1793 s/scg_stop_range_selection/scg_rangesel_stop/
1795 s/scg_set_cursor_bounds/scg_cursor_bound/
1796 s/scg_cursor_vertical_extend/scg_cursor_extend_v/
1797 s/scg_cursor_horizontal_extend/scg_cursor_extend_h/
1798 s/scg_cursor_vertical_move/scg_cursor_move_v/
1799 s/scg_cursor_horizontal_move/scg_cursor_move_h/
1800 s/scg_cursor_vertical_extend/scg_rangesel_extend_v/
1801 s/scg_cursor_horizontal_extend/scg_rangesel_extend_h/
1802 s/scg_cursor_vertical_move/scg_rangesel_move_v/
1803 s/scg_cursor_horizontal_move/scg_rangesel_move_h/
1805 * src/sheet-control-gui.[ch] : Move the rangesel info from
1806 gnumeric-sheet into here in preparation for panes.
1807 (scg_rangesel_extend_v) : merge content from
1808 gnumeric-sheet equivalent.
1809 (scg_rangesel_extend_h) : ditto.
1810 (scg_rangesel_move_v) : ditto.
1811 (scg_rangesel_move_h) : ditto.
1812 (scg_rangesel_start) : ditto.
1813 (scg_rangesel_stop) : ditto.
1814 (start_range_selection) : moved from gnumeric-sheet.
1815 (scg_rangesel_possible) : renamed from
1816 gnumeric_sheet_can_select_expr_range.
1817 (scg_rangesel_changed) : renamed from scg_range_selection_changed
1818 and make this the point that rationalizes the cursor points.
1819 (scg_cursor_bound) : renamed from scg_set_cursor_bounds
1820 and make this the point that raionalizes the cursor points.
1821 (scg_ant) : changes to item_cursor_set_bounds.
1822 (scg_colrow_select) : rangesel support is now in scg.
1823 (scg_select_all) : ditto.
1825 * src/workbook-edit.c : cleanup includes.
1827 * src/item-grid.c (item_grid_event) : rangesel support is now in scg.
1828 (item_grid_button_1) : ditto.
1830 * src/item-cursor.h : privatize the structure and class.
1832 * src/item-cursor.c (cb_autofill_scroll) : changes to
1833 item_cursor_set_bounds_visibly signature.
1834 (cb_move_cursor) : ditto.
1835 (item_cursor_set_bounds_visibly) : changes to item_cursor_set_bounds
1837 (item_cursor_selection_event) : ditto.
1838 (item_cursor_set_bounds) : simplify.
1840 * src/item-bar.c (is_pointer_on_division) : rangesel support is now in scg.
1842 * src/gnumeric-sheet.[ch] : move the rangesel logic up into scg.
1844 2001-05-08 Jody Goldberg <jgoldberg@home.com>
1846 From Juan Pablo Mendoza <pablo_juan@yahoo.com>
1847 * src/sheet.c: (sheet_clone_colrow_info): Clone col and row
1850 2001-05-08 Almer S. Tigelaar <almer@gnome.org>
1852 * src/colrow.c (colrow_restore_sizes_group): Restore
1853 default from list of savedsizes.
1854 (colrow_set_sizes): When changing default save as
1857 2001-05-08 Almer S. Tigelaar <almer@gnome.org>
1859 * src/workbook-control-gui.c (wbcg_menu_state_update): New, combine
1860 all the enabling/disabling of menu items here including the newly
1861 added show/hide menu items.
1862 (wbcg_menu_state_enable_insert): Remove.
1863 (wbcg_menu_state_paste_special): Remove.
1864 (workbook_control_gui_ctor_class): Init menu_state_update callback
1865 and remove paste_special and enable_insert initializations.
1866 (workbook_control_gui_init): Initialize show/hide menu items.
1868 * src/workbook-control-gui-priv.h: Add show/hide detail menu items
1869 and tidy structure lay-out.
1871 * src/workbook-control-priv.h: Remove menu_state_enable_insert
1872 and menu_state_paste_special callbacks and add menu_state_update
1875 * src/workbook-control.[ch]: Add wb_menu_state_update and
1876 remove wb_menu_state_paste_special and wb_menu_state_enable_insert.
1877 (wb_control_sheet_add): call wb_menu_state_update, Remove
1878 call to menu_state_paste_special.
1880 * src/sheet-private.h: Add enable_showhide_detail.
1882 * src/sheet.c (sheet_new): Initialize menu state booleans.
1883 (sheet_menu_state_enable_insert): Use wb_control_menu_state_update.
1885 * src/workbook-view.c (wb_view_menus_update): Idem and
1886 remove call to wb_control_menu_state_paste_special.
1888 * src/application.c (application_clipboard_clear): Idem.
1889 (application_clipboard_copy): Idem.
1890 (application_clipboard_cut): Idem.
1892 * src/selection.c (sheet_selection_set_internal): Add comment for
1893 show/hide detail enabling/disabling, something we can't do just yet.
1895 2001-05-08 Jody Goldberg <jgoldberg@home.com>
1897 * src/clipboard.c (clipboard_paste_region) : Add PASTE_IGNORE_COMMENTS.
1899 * src/commands.c (cmd_merge_cells_undo) : Use it here.
1901 2001-05-07 Jody Goldberg <jgoldberg@home.com>
1903 * src/sheet-merge.c (sheet_merge_remove) : adjust comments.
1904 (sheet_merge_add) : ditto.
1906 * src/sheet-object-cell-comment.c (comment_get_points) : handle merged
1909 * src/commands.c (cmd_unmerge_cells) : don't queue an undo object if
1910 there is nothing to do.
1911 (cmd_merge_cells) : filter existing ranges too.
1913 2001-05-07 Jody Goldberg <jgoldberg@home.com>
1915 * src/item-cursor.c (item_cursor_event) : ignore events while editing.
1917 * src/functions/fn-string.c (gnumeric_value) : s/free/g_free/
1918 * src/parse-util.c (parse_cell_name_list) : ditto.
1920 * src/parser.y (gnumeric_expr_parser) : reorganize slightly to improve
1923 * src/sheet.c (sheet_range_contains_region) : doh!. forgot to invert
1924 logic when I renamed the function.
1926 2001-05-07 Jon K Hellan <hellan@acm.org>
1928 * src/sheet-control-gui.c (scg_select_all): Handle select button
1929 both within and outside guru mode.
1930 (button_select_all): Use scg_select_all.
1932 2001-05-07 Morten Welinder <terra@diku.dk>
1934 * src/stf.c (stf_write_workbook): Plug file descriptor leak.
1935 (stf_write_func): Constify.
1936 (stf_open_and_read): Protect against missing file size after
1939 2001-05-07 Almer S. Tigelaar <almer@gnome.org>
1941 * src/workbook-edit.c
1942 (workbook_edit_toolbars_set_sensitive): New, enable/disable
1943 all toolbars. Now works for bonobo toolbars too.
1944 (cb_thaw_ui_toolbar): Use toolbars_set_sensitive.
1945 (workbook_edit_set_sensitive): Idem.
1947 * src/GNOME_Gnumeric.xml: Add toolbar commands and set verbs
1948 on existing toolbars.
1950 2001-05-07 Almer S. Tigelaar <almer@gnome.org>
1952 * src/parser.y (gnumeric_expr_parser): Display which
1953 token caused the parse error. And display more detailed
1954 error messages for paren matching errors using
1956 (find_matching_close): Utility function for paren matching.
1957 (check_parens): Renamed from find_bracket. Replace bracket
1958 with paren everywhere for consistency.
1959 (yylex): Kill paren matching here.
1961 2001-05-07 Morten Welinder <terra@diku.dk>
1963 * src/item-grid.c (drag_start): Plug leak.
1965 * src/plugin.c (plugin_info_read): Fix truck-size leak.
1966 (plugin_file_state_from_string): Plug leak.
1968 2001-05-07 Zbigniew Chyla <cyba@gnome.pl>
1970 Improved plugin system performance & scalability:
1971 - reading plugin information from file only if necessary
1972 (usually when activating a plugin)
1973 - some minor optimizations (using hashes instead of lists, etc.)
1976 (GNUMERIC_BASE_SOURCES): Sorted some items.
1978 * src/gutils.h (g_list_to_vector_custom): New macro.
1981 Made some functions static.
1982 s/plugin_loader_get_by_id/plugin_loader_get_type_by_id/
1983 (struct _PluginInfo): Added has_full_info field.
1984 (get_file_state_as_string, plugin_file_state_as_string,
1985 plugin_file_state_from_string, plugin_file_state_free,
1986 plugin_cache_init, plugin_cache_shutdown):
1987 New functions, support for caching information about plugin ids
1988 stored in XML files (together with modification dates).
1989 (plugin_info_read_full_info_if_needed_error_info,
1990 plugin_info_read_full_info_if_needed): New functions loading missing
1991 plugin information from file if necessary.
1993 Use existing PluginInfo struct rather than creating a new one,
1994 take XML file name (not parsed XML tree) as an argument.
1995 (plugin_info_new_from_xml):
1996 New function, creates new PluginInfo struct from XML file (using
1998 (plugin_info_new_with_id_and_dir_name_only):
1999 New function, creates new PluginInfo struct with only plugin id and
2000 directory name given (sets has_full_info to FALSE).
2001 (plugin_info_get_name, plugin_info_get_description,
2002 plugin_info_get_extra_info_list, plugin_info_is_active,
2003 plugin_info_peek_name, plugin_info_peek_description,
2004 plugin_info_peek_loader_type_str,
2005 plugin_info_provides_loader_by_type_str,
2006 plugin_info_is_loaded, plugin_info_peek_services_data,
2007 plugin_info_get_loader,
2008 plugin_inc_dependants, plugin_dec_dependants,
2009 plugin_dependencies_inc_dependants,
2010 plugin_dependencies_dec_dependants,
2011 plugin_get_loader_if_needed, activate_plugin, deactivate_plugin,
2012 plugin_can_deactivate, plugin_info_force_mark_inactive,
2013 plugin_load_service, plugin_unload_service,
2014 plugin_load_dependencies):
2015 Read full plugin information if needed.
2017 Don't try to free most data if has_full_info == FALSE.
2018 (plugin_info_list_read_for_dir):
2019 Return one PluginInfo instead of a list, create incomplete
2020 PluginInfo (using plugin_info_new_with_id_and_dir_name_only) if
2021 found a directory in plugin_file_state_dir_hash.
2022 (plugin_info_list_read_for_subdirs_of_dir):
2023 Don't check if current file is a directory (it'll be detected
2025 (plugin_db_get_known_plugin_id_list,
2026 plugin_db_extend_known_plugin_id_list, plugin_db_is_known_plugin,
2027 plugin_db_get_saved_active_plugin_id_list,
2028 plugin_db_is_saved_active_plugin):
2030 (plugin_db_get_available_plugin_info_list): Just return
2031 available_plugin_info_list, never fail.
2032 (plugin_db_mark_plugin_for_deactivation,
2033 plugin_db_is_plugin_marked_for_deactivation, plugins_shutdown):
2034 Use hash table (plugins_marked_for_deactivation_hash) instead of
2036 (plugin_db_init): Initialize available_plugin_info_list and
2037 saved_active_plugin_id_list here, use a hash table when detecting
2039 (plugins_init): Call plugin_cache_init.
2040 (plugins_init): Call plugin_cache_shutdown.
2043 (plugin_info_read, plugin_info_print, plugin_info_list_read_for_dir,
2044 plugin_info_list_read_for_subdirs_of_dir,
2045 plugin_info_list_read_for_subdirs_of_dir_list,
2046 plugin_info_list_read_for_all_dirs,
2047 plugin_db_extend_known_plugin_id_list, plugin_db_is_known_plugin,
2048 plugin_db_extend_saved_active_plugin_id_list,
2049 plugin_db_is_saved_active_plugin,
2050 plugin_db_activate_saved_active_plugins):
2051 Removed (most of them are now static functions).
2053 * src/plugin-service.c
2054 (plugin_service_file_saver_initialize): Fixed serious typo.
2056 * src/dialogs/dialog-plugin-manager.c
2057 (cb_pm_button_activate_plugin_clicked,
2058 cb_pm_button_activate_all_clicked,
2059 cb_pm_button_deactivate_all_clicked,
2060 update_plugin_manager_view): Adjusted to
2061 plugin_db_get_available_plugin_info_list signature change.
2063 * plugins/applix/plugin.xml, plugins/dif/plugin.xml,
2064 plugins/excel/plugin.xml, plugins/gb/plugin.xml,
2065 plugins/gda/plugin.xml, plugins/gnome-glossary/plugin.xml,
2066 plugins/guile/plugin.xml, plugins/html/plugin.xml,
2067 plugins/lotus-123/plugin.xml, plugins/numtheory/plugin.xml,
2068 plugins/oleo/plugin.xml, plugins/perl/plugin.xml,
2069 plugins/plan-perfect/plugin.xml, plugins/py-func/plugin.xml,
2070 plugins/python/plugin.xml, plugins/python-loader/plugin.xml,
2071 plugins/sc/plugin.xml, plugins/sylk/plugin.xml,
2072 plugins/xbase/plugin.xml, plugins/xml_sax/plugin.xml:
2073 Removed <gnumeric_plugin_group> tags. Now every directory may contain
2076 2001-05-07 Almer S. Tigelaar <almer@gnome.org>
2078 * src/preview-grid.c (preview_grid_draw_background):
2079 Call style_border_draw_diag here.
2081 2001-05-06 Jody Goldberg <jgoldberg@home.com>
2083 * src/style-border.c (style_borders_row_draw) : don't draw the
2085 (style_border_draw_diag) : split the diag drawing code into here.
2087 * src/item-grid.c (item_grid_draw_merged_range) : call
2088 style_border_draw_diag here.
2089 (item_grid_draw_background) : and here.
2091 * src/workbook-format-toolbar.c (cb_merge_cells) : fragment the
2092 selection just in case.
2093 (cb_unmerge_cells) : ditto. Thanks Juan Pablo.
2095 * src/commands.c (cmd_unmerge_cells) : remove ugly hack cast.
2096 (cmd_merge_cells) : ditto. DO NOT DO THAT !
2098 * src/sheet.c (sheet_range_splits_region) : implement the optional
2099 ignore feature for merged regions too.
2101 2001-05-06 Almer S. Tigelaar <almer@gnome.org>
2103 * src/colrow.c (colrow_restore_sizes): Don't free things
2105 (colrow_save_sizes): Initialize run length.
2107 2001-05-06 Almer S. Tigelaar <almer@gnome.org>
2109 * src/gnumeric.h: Define ColRowRLESizeList.
2111 * src/commands.c (cmd_ins_del_colrow_*) : For saving
2112 and restoring the col/row sizes we now use a
2113 ColRowRLESizeList instead of a double *.
2115 * src/colrow.[ch] (colrow_save_sizes) : Rebuild to return
2116 a Run-Length encoded list of sizes.
2117 (colrow_restore_sizes): Idem, but as parameter.
2118 (colrow_size_list_destroy): Use colrow_rle_size_list_destroy.
2119 (colrow_rle_size_list_destroy): Free SavedSize's.
2121 2001-05-06 Jon K Hellan <hellan@acm.org>
2123 * src/sheet-control-gui.c (scg_range_selection_changed): Change
2124 item cursor if expr entry changed the range.
2126 2001-05-06 Jon K Hellan <hellan@acm.org>
2128 * src/item-bar.h: We don't need guru_cursor.
2130 * src/item-bar.c (item_bar_realize, item_bar_unrealize,
2133 2001-05-05 Jody Goldberg <jgoldberg@home.com>
2135 * src/sheet-merge.c (sheet_merge_add) : update the edit_pos if
2138 * src/sheet.c (sheet_update_only_grid) : fix typo.
2140 2001-05-05 Almer S. Tigelaar <almer@gnome.org>
2142 * src/item-bar.[ch]:
2143 (item_bar_realize): Initialize item_bar->shade and tidy to be
2145 (item_bar_unrealize): Unref item_bar->shade.
2146 (item_bar_draw): Use item_bar->shade.
2148 2001-05-05 Jon K Hellan <hellan@acm.org>
2150 * src/item-bar.h (struct _ItemBar): Add guru_cursor member.
2152 * src/item-bar.c (item_bar_realize): Initialize guru_cursor.
2153 (item_bar_unrealize): Destroy guru_cursor.
2154 (is_pointer_on_division): Handle uninitialized case.
2155 (set_cursor): Do not show resize cursor in guru mode.
2156 (item_bar_event): Allow gurus to do range selection. Do nothing if
2157 guru is up but no range selector active. Do not post context menu
2160 2001-05-04 Jody Goldberg <jgoldberg@home.com>
2162 * src/sheet.c (sheet_range_splits_array) : Make the displaying the
2164 (sheet_range_splits_region) : ditto.
2165 (sheet_range_contains_region) : implement.
2167 * src/workbook-control-gui.c (sort_cmd) : no need to check for merges
2169 * src/dialogs/dialog-cell-sort.c (dialog_cell_sort) : or here.
2171 * src/commands.c (cmd_sort) : it belongs here.
2173 * src/print.c (print_page) : in the case of grid lines we were off by
2174 a point. In the case without gridlines we need not display the
2175 leading cell margins.
2177 2001-05-04 Jody Goldberg <jgoldberg@home.com>
2179 s/clipboard_release/cellregion_free/
2180 s/range_copy/range_dup/
2181 s/cell_region_render_ascii/cellregion_to_string/
2182 s/clipboard_release/cellregion_free/
2184 * src/commands.c (cmd_autofill) : Use sheet_range_contains_region.
2185 (cmd_autofill_redo) : no need to test here.
2186 (cmd_paste_cut) : test destination for validity and ensure that it
2187 does not slice up any merged regions or arrays. Make the descriptor
2188 an argument so that other commands can use this one.
2189 (cmd_ins_del_colrow_redo) : use colrow_max.
2190 (cmd_area_set_text_redo) : use sheet_ranges_split_region.
2191 (cmd_colrow_outline_change) : suppress warning.
2193 * src/gui-clipboard.c (x_selection_to_cell_region) : simplify by using
2194 some of the convenience routines.
2196 * src/gutils.c (gnumeric_sys_data_dir) : warning suppression.
2197 (gnumeric_sys_lib_dir) : ditto.
2199 * src/item-bar.c (item_bar_draw) : add missing warning.
2201 * src/item-cursor.c (item_cursor_drag_event) : Don't assume the
2202 release came from the button that started the grab (think about
2203 multiple simultaneous button downs.
2204 (item_cursor_selection_event) : ditto.
2205 (item_cursor_do_drop) : changes to selection_first_range.
2207 * src/parse-util.c (col_name_internal) : new routine split from
2208 col_name with better buffer handling.
2209 (col_name) : used here.
2210 (cols_name) : and in this new function.
2212 * src/print.c (sheet_print_selection) : changes to
2213 selection_first_range.
2215 * src/print-info.c (print_info_new) : default even_if_only_styles to
2216 false. This is probably what most people want.
2218 * src/ranges.c (range_translate) : don't invert.
2219 (range_height) : new util. could probably be #define.
2220 (range_width) : new util. could probably be #define.
2221 (range_is_infinite) : use range_is_full.
2222 (range_is_full) : new util.
2224 * src/search.c (calculate_replacement) : warning suppression.
2226 * src/selection.c (sheet_selection_cut) : Use
2227 sheet_range_splits_region and selection_first_range.
2228 (sheet_selection_copy) : Use selection_first_range and remove TODO
2229 about supporting not paste by content for partial arrays.
2230 (selection_first_range) : Add optional error reporting if there are
2231 multiple selection ranges.
2233 * src/format.c (format_get_currency) : diddle the logic to get
2234 undefined to work the way people expect for locale C.
2236 * src/sheet-merge.c (sheet_merge_relocate) : remove some dead code.
2237 (sheet_merge_add) : changes to sheet_range_splits_array.
2239 * src/sheet-object-widget.c (sheet_widget_checkbox_construct) :
2240 changes to selection_first_range.
2242 * src/sheet.c (sheet_delete_{cols,rows}) : changes to
2243 sheet_range_splits_array.
2244 (sheet_insert_{cols,rows}) : use sheet_range_splits_array.
2245 (avoid_dividing_array_vertical) : delete.
2246 (avoid_dividing_array_horizontal) : delete.
2247 (sheet_is_pristine) : constness.
2248 (sheet_mark_clean) : delete.
2249 (sheet_clear_region) : changes to sheet_range_splits_array.
2250 (sheet_ranges_split_region) : renamed from selection_check_for_array.
2251 (sheet_range_splits_region) : new routine to check arrays and merged
2253 (sheet_range_splits_array) : improve and add hooks to be used for
2255 (cb_check_array_vertical) : report the array being split.
2256 (cb_check_array_horizontal) : report the array being split.
2258 * src/stf-parse.c (stf_parse_region) : use cellregion_new.
2259 (stf_parse_is_valid_data) : simplify.
2261 * src/value-sheet.c (value_area_get_width) : warning suppression.
2262 (value_area_get_height) : warning suppression.
2263 (value_area_fetch_x_y : signedness.
2264 (value_area_get_x_y) : signedness.
2266 * src/value.c (value_array_resize) : signedness.
2267 (value_array_set) : signedness.
2269 * src/workbook-control-gui.c (wbcg_error_splits_array) : signature
2271 (cb_insert_rows) : use selection_first_range
2272 (cb_insert_cols) : ditto.
2274 (cb_workbook_debug_info) : clean out some deadwood.
2276 * src/workbook-edit.c (auto_complete_matches) : warning suppression.
2278 * src/workbook.c (workbook_sheet_detach) : warning suppression.
2279 (g_ptr_array_insert) : warning suppression, moved to gutils.
2281 * src/xml-io.c (xml_write_attributes) : warning suppression.
2282 (xml_read_selection_clipboard) : use cellregion_new and tidyup.
2284 * src/clipboard.c (paste_link) : Only make the link sheet specific if
2286 (clipboard_paste_region) : constness, support being able to paste
2287 content only as link or value.
2288 (clipboard_prepend_cell) : check for arrays.
2289 (clipboard_copy_range) : use cellregion_new
2290 (cellregion_new) : new function
2291 (cellregion_free) : renamed from clipboard_release.
2292 (cellregion_to_string) : moved here from render-ascii.
2294 src/cmd-edit.c (cmd_paste) : more protection. Merge in
2296 (cmd_paste_to_selection) : handle changes to selection_is_simple and
2297 use selection_first_range
2298 (cmd_shift_rows) : changes to cmd_paste_cut.
2299 (cmd_shift_cols) : ditto.
2301 * src/command-context-priv.h : change signature of splits array.
2302 * src/command-context.h : ditto.
2303 * src/command-context.c (gnumeric_error_splits_array) : ditto.
2305 * src/application.c (application_clipboard_clear) :
2306 (application_set_selected_sheet) : remove #warning, it is not portable.
2309 * src/Makefile.am : remove render-ascii.[ch] Move their content into
2312 2001-05-01 Jody Goldberg <jgoldberg@home.com>
2314 * src/clipboard.c (clipboard_prepend_cell) : remove ugly
2317 * src/workbook-edit.c (auto_complete_matches) : remove warning.
2319 * src/xml-io.c (xml_write_attributes) : remove warning.
2321 2001-05-04 Morten Welinder <terra@diku.dk>
2323 * src/expr.c (expr_parse_string): Plug leak.
2325 2001-05-04 Morten Welinder <terra@diku.dk>
2327 * src/analysis-tools.c (set_cell_value): Make public.
2329 * src/solver-lp.c (solver_sensitivity_report,
2330 solver_answer_report): Use set_cell_value.
2332 * src/value.c (value_peek_string): New function.
2334 * src/expr.c (eval_expr_real): Simplify CONCAT case using
2337 * src/datetime.c (datetime_value_to_serial_raw): Simplify using
2340 * src/workbook-view.c (wb_view_auto_expr_recalc): Ditto.
2342 * src/graph-vector.c (graph_vector_seq_string): Ditto.
2344 * src/solver-lp.c (find_name): Ditto.
2346 2001-05-04 Almer S. Tigelaar <almer@gnome.org>
2348 * src/GNOME_Gnumeric.xml: Correct InsertComment
2349 pixmap, add pixmap for Sort and add separators
2350 on the right places.
2352 * src/pixmaps: Split sort ascending into 16x16 and
2355 * src/application.c: Account for the split. This
2356 will make the menu item show up with a correct
2359 * src/workbook-control-gui.c: Idem. Use the 16x16
2362 2001-05-04 Almer S. Tigelaar <almer@gnome.org>
2364 * src/commands.c (cmd_unmerge_cells): Correct minor typo.
2365 (cmd_merge_cells): Idem.
2367 2001-05-03 Jon K Hellan <hellan@acm.org>
2369 * src/gnumeric-util.c (cb_remove_object_data): New callback
2370 function. Removes object data from wbcg when dialog is destroyed.
2371 (gnumeric_keyed_dialog): New function. Make dialog a transient
2372 child of wbcg, attaching to wbcg object data to identify the
2374 (gnumeric_dialog_raise_if_exists): New function: Raise the dialog
2375 identified by key if it is registered on the wbcg.
2377 * src/gnumeric-util.h (gnumeric_dialog_make_unique,
2378 gnumeric_dialog_raise_if_exists): Declare.
2380 * src/about.c (dialog_about): Use gnumeric_keyed_dialog.
2381 Use gnumeric_dialog_raise_if_exists to ensure that only one sheet
2382 object config dialog at a time can be displayed for a wbcg.
2384 * src/sheet-object-widget.c (sheet_widget_checkbox_user_config):
2387 2001-05-02 Almer S. Tigelaar <almer@gnome.org>
2389 * src/workbook-edit.c (cb_thaw_ui_toolbar): Callback timer
2390 routine, re-enables the toolbars.
2391 (workbook_edit_set_sensitive): Add a ui timer to eliminate
2394 * src/sheet.c (sheet_menu_state_enable_insert): Clean-up.
2396 2001-05-01 Almer S. Tigelaar <almer@gnome.org>
2398 * src/parser.y (yylex): Seek for matching )'s for ('s and
2400 (find_bracket): The meat for the above functionality
2401 (find_char): Split out from yylex, might be useful in other
2402 places. Currently used to scan for matching quotes.
2403 (gnumeric_expr_parser): If the ExprTree is null, assume that
2404 an error has occurred, set a general "invalid expression" and
2405 mark the whole expression. Also display more detail when both
2406 the expression and error message are non-null.
2408 2001-05-01 Almer S. Tigelaar <almer@gnome.org>
2410 * src/application.[ch] (application_clipboard_unant): Use
2412 (application_clipboard_clear): Idem.
2413 (application_clipboard_copy): Use sheet_ant.
2414 (application_clipboard_cut): Idem.
2415 (application_clipboard_is_cut): New function, is the area
2416 on the clipboard marked for cutting or for copying?
2418 * src/selection.[ch] (sheet_selection_ant): Deprecated, remove.
2419 (sheet_selection_unant): Idem.
2421 * src/sheet-control-gui.[ch] (scg_selection_ant): Rename
2422 to scg_ant and add a ranges parameter where the ranges to
2423 ant can be specified.
2424 (scg_selection_unant): Rename to scg_unant.
2425 (scg_destroy): Make sure to un-ant everything.
2426 (scg_construct): Ant all anted regions on the sheet.
2428 * src/sheet.[ch] (sheet_ant): New, ants one or more regions
2430 (sheet_unant): New, unants all currently anted region on the
2432 (sheet_destroy): Make sure to free the ant list.
2434 * src/commands.c (cmd_ins_del_colrow_undo): Remove ugly ant-hack,
2435 this is no longer needed, application_clipboard_cut/copy handles
2437 (cmd_ins_del_colrow_redo): Idem
2438 (cmd_ins_del_colrow): Oh dear, we were actually storing both
2439 the cut and copied area as a cut area and we were actually
2440 cutting even if the range was a copied area after shifting.
2442 2001-04-30 Jody Goldberg <jgoldberg@home.com>
2444 * src/about.c (dialog_about) : sync with website.
2446 * src/format.c (format_number) : don't suppress the minus sign when
2447 faced with a space in the format. Is there a counter example ?
2448 (format_number) : handle negative improper fractions.
2450 2001-04-30 Morten Welinder <terra@diku.dk>
2452 * src/func.c (tokenized_help_find): Warning killer.
2454 * src/value.c (value_new_array): Kill warnings.
2455 (value_new_array_empty): Ditto.
2456 (value_release): Ditto.
2458 * src/print-cell.c (print_show): Use proper types.
2459 (get_width_string_n): Ditto.
2461 * src/number-match.c (gnumeric_error_init): Warning killer.
2463 * src/parser.y (deallocate_all): Warning killer.
2465 * src/item-bar.c (item_bar_draw): Avoid signedness problems.
2467 * src/format-template.c (hash_table_destroy): Warning killer.
2469 * src/colrow.h (struct _ColRowInfo): Make size_pixels an int.
2471 * src/value-sheet.c (value_area_get_width, value_area_get_height):
2472 Return an int, not a guint.
2474 2001-04-30 Almer S. Tigelaar <almer@gnome.org>
2476 * src/commands.c (cmd_clear_selection): More descriptive
2479 (cmd_resize_colrow): Idem.
2480 (cmd_autofill): Idem.
2481 (cmd_autoformat): Idem.
2482 (cmd_unmerge_cells): Idem.
2483 (cmd_merge_cells): Idem.
2484 (cmd_colrow_std_size): Add "pts" to end of descriptor.
2485 (cmd_zoom): No need to re-assign gstring.
2486 (range_list_to_string): Convert a list of ranges to a
2487 string representation.
2489 * src/colrow.[ch] (colrow_index_list_to_string): Convert
2490 an index list to a string representation.
2491 (colrow_string_build): Utility routine for
2492 colrow_index_list_to_string.
2494 2001-04-30 Almer S. Tigelaar <almer@gnome.org>
2496 * src/parser.y (gnumeric_expr_parser) : Give a warning
2497 when both the resulting ExprTree and error message is non-null.
2498 This should never happen.
2500 2001-04-29 Jody Goldberg <jgoldberg@home.com>
2502 * src/parser.y (yylex) : return INVALID_TOKEN rather than EOF when a
2503 lexical error is found.
2505 * src/selection.c (sheet_selection_cut) : It is ok for the source
2506 region to have merged regions or arrays. It is NOT ok for the
2507 target to have regions that are split.
2509 * src/cmd-edit.c (cmd_paste) : Only clear the clipboard if the paste
2512 2001-04-29 Almer S. Tigelaar <almer@gnome.org>
2514 * src/commands.c (cmd_zoom) : Implement zoom undo/redo
2515 (cmd_zoom_destroy) : Idem.
2516 (cmd_zoom_redo): Idem.
2517 (cmd_zoom_undo): Idem.
2519 * src/workbook-control-gui.c (cb_change_zoom):
2522 2001-04-28 Jody Goldberg <jgoldberg@home.com>
2524 * src/style-border.c (print_hline) : handle offset of screen coords vs
2526 (print_vline) : ditto.
2527 (style_borders_row_print) : sync with style_borders_row_draw and pass
2528 width to the line drawing to handle different coordinate types.
2530 * src/ranges.c (range_translate) : warn if clipped not just if
2533 * src/clipboard.c (clipboard_prepend_cell) : store the source sheet if
2535 (paste_link) : Use the right sheets.
2536 (clipboard_paste_region) : send enough information into paste_link.
2538 2001-04-27 Jody Goldberg <jgoldberg@home.com>
2540 * src/format.c (pre_parse_format) : Catch fractions too.
2541 (render_number) : don't pass in so many copies of flags. Just use the
2542 info struct. Add a 'has_fraction' flag to disable rounding.
2543 (do_render_number) : ditto.
2544 (stern_brocot) : simple stern brocot tree. Should really use an
2545 adaptive precision but I am lazy.
2546 (format_number) : add fractions.
2548 * src/commands.c (cmd_autofill_redo) : changing visiblity can triger a
2549 draw which requiresthat things be rendered and spanned. Be sure to
2550 complete the action BEFORE changing visibility.
2552 2001-04-27 Chema Celorio <chema@celorio.com>
2554 * src/sheet-object.h: add the header for clone_sheet
2556 * src/sheet-object.c (sheet_object_clone): implement
2557 (sheet_object_clone_sheet): implemnt.
2559 * src/sheet-object-widget.c (SOW_MAKE_TYPE): add read_xml, write_xml
2560 and clone methods to macro
2561 (sheet_object_widget_clone): implement.
2562 Implement for X in label, frame, button, checkbox
2563 (sheet_widget_x_construct_with_label):
2564 (sheet_widget_x_destroy):
2565 (sheet_widget_x_clone):
2566 (sheet_widget_x_write_xml):
2567 (sheet_widget_x_read_xml):
2569 (sheet_object_widget_register): implement
2571 * src/sheet-object-impl.h: add the clone method
2573 * src/sheet-object-graphic.c (sheet_object_graphic_clone): implement.
2574 (sheet_object_filled_clone): implement.
2576 * src/sheet-object-cell-comment.c (cell_comment_clone): implement
2578 2001-04-26 Jon K Hellan <hellan@acm.org>
2580 * src/item-grid.c (item_grid_button_1): Invoke
2581 scg_start_range_selection rather than
2582 gnumeric_sheet_start_range_selection.
2584 * src/sheet-control-gui.[ch] (scg_start_range_selection): New function.
2585 Start range selection in gsheet and notify expr entry.
2587 2001-04-26 Jody Goldberg <jgoldberg@home.com>
2589 * configure.in : Add configure checks for finite and isfinite
2591 * src/mathfunc.h (FINITE) : Move the #define wrapper out here.
2593 * src/cell.c : prune some includes
2594 (cell_default_halign) : rename to
2595 * src/style.c (style_default_halign) : to simplify headers for systems
2596 that do not support fwd declarations of enums. H - cough - PUX
2598 2001-04-26 Morten Welinder <terra@diku.dk>
2600 * src/stf-parse.c: Put a decisive end to the signed-vs-unsigned
2601 problems in here. It's all glib's fault, really.
2603 2001-04-26 Morten Welinder <terra@diku.dk>
2605 * src/stf-parse.c (stf_parse_options_fixed_autodiscover): Fix a
2606 signed vs. unsigned error. (We underflowed from 0 to
2609 2001-04-26 Jody Goldberg <jgoldberg@home.com>
2611 * src/item-grid.c (item_grid_class_init) : Drat part of a canceled
2614 * src/ranges.c (range_is_sane) : new function.
2615 (sheet_merge_add) : use it here.
2617 2001-04-26 Jon K Hellan <hellan@acm.org>
2619 * src/item-grid.c (item_grid_draw_background): Fix typo.
2621 * src/gnumeric-util.c (gnumeric_dialog_run): Fix silly mistake
2623 2001-04-26 Jon K Hellan <hellan@acm.org>
2625 * src/gnumeric-util.c (gnumeric_wb_dialog_run): Eliminate attempt
2626 to handle parent being closed underneath dialog running a
2627 recursive mainloop. That can't happen since GTK 1.2.7. Move what
2628 remains of the function into gnumeric_dialog_run.
2629 (gnumeric_dialog_run): See above.
2630 (gnumeric_set_transient): Place dialog according to user's
2632 (gnumeric_non_modal_dialog): Use gnumeric_set_transient to get
2635 * src/gui-file.c (gui_file_save_as, dialog_query_load_file):
2636 No longer place at mouse, since gnumeric_set_transient now
2637 honours user's dialog placement policy.
2639 2001-04-25 Jody Goldberg <jgoldberg@home.com>
2641 * src/sheet-style.c (sheet_style_get_list) : Add a horizontal merge
2642 before dumping to a list.
2643 (cb_hash_to_list) : free elements that have been merged in the
2644 horizonal step, but have not yet been removed.
2645 (cb_hash_merge_horiz) : new function. merge when possible, after a
2646 merge either free the useless bit or mark it as useless for later
2648 (cb_style_list_add_node) : Use mstyle_equal for now to remerge
2649 different instances of the same logical style. This is necessary
2650 until I finish the per sheet style index.
2651 (sheet_style_init) : add some sanity checks incase some bright boy
2652 decides to up the size of sheet and forgets here.
2654 * src/xml-io.c (xml_sheet_write) : Add the properties for the
2655 outline mode preferences.
2656 (xml_sheet_read) : ditto.
2658 * src/item-debug.h : fix the messages to include the module
2659 * src/item-bar.c : fix the item-debug grab/ungrab messages.
2660 (item_bar_update) : gnome_canvas_group_child_bounds is a deprecated
2662 * src/item-edit.c : fix the item-debug grab/ungrab messages.
2663 (recalc_spans) : gnome_canvas_group_child_bounds is a deprecated
2665 * src/item-grid.c : fix the item-debug grab/ungrab messages.
2666 (item_grid_update) : gnome_canvas_group_child_bounds is a deprecated
2668 (item_grid_button_1) : If we are going to start selecting a range have
2669 the grid to a grab on button down. This should fix the pseudo-race
2670 condition that was irritating the ExprEntry.
2672 * src/preview-grid.c (preview_grid_update) :
2673 gnome_canvas_group_child_bounds is a deprecated useless call.
2674 * src/item-cursor.c : fix the item-debug grab/ungrab messages.
2675 (item_cursor_point) : animated cursors should never receive events.
2677 * src/cell-draw.c (cell_draw) : It is perfectly reasonable for
2678 narrow/short cols/rows to produce cells that have negative sizes
2679 with the margins removed. exit silently.
2681 2001-04-25 Almer S. Tigelaar <almer@gnome.org>
2683 * src/stf-parse.c (stf_parse_options_fixed_autodiscover):
2684 Fix ugly discovering error that can cause a non-existant column
2685 to be discovered if there are leading spaces and avoid skipping
2686 over columns that should be checked for emptyness. Fixes Bug #53499
2688 2001-04-24 Almer S. Tigelaar <almer@gnome.org>
2690 * src/number-match.c : We are using the fabs function, so
2693 2001-04-24 Morten Welinder <terra@diku.dk>
2695 * src/parse-util.c (gnumeric_char_start_expr_p): Make sure lines
2696 like "-----------" are not considered expressions. (Even though
2699 2001-04-23 Jon K Hellan <hellan@acm.org>
2701 * src/sheet-control-gui.c (scg_stop_range_selection): Stop
2702 sliding. This was a race condition. The slide handler would think
2703 we were still range selecting.
2705 2001-04-23 Morten Welinder <terra@diku.dk>
2707 * src/parse-util.c (gnumeric_char_start_expr_p): Handle initial
2708 dash. Also handle initial plus better.
2710 2001-04-23 Morten Welinder <terra@diku.dk>
2712 * src/xml-io.c (xml_read_style): Compare against right version.
2714 2001-04-23 Morten Welinder <terra@diku.dk>
2716 * src/number-match.c (compute_value): Handle negative numbers(!).
2717 Handle overflow better.
2719 2001-04-23 Morten Welinder <terra@diku.dk>
2721 * src/gui-clipboard.c (x_selection_to_cell_region): Plug leak.
2723 2001-04-23 Almer S. Tigelaar <almer@gnome.org>
2725 * src/workbook-edit.c (workbook_finish_editing): Give focus
2726 to the edit line when an error is encountered.
2727 * src/workbook-control-gui.c
2728 (wbcg_close_control) : Don't store the partially entered expression
2729 when we are going to close.
2730 (cb_file_quit) : Idem.
2731 (cb_notebook_switch_page) : Idem, for switching between tabs
2732 when we are _not_ in a subexpression.
2734 * src/parser.y : Correct off-by-one glitches and strtod exponent
2735 out of range error problem.
2737 * src/expr.[ch] (expr_parse_string): Use a ParseError struct
2738 instead of an error string.
2740 * src/commands.c (cmd_area_set_text_redo): Use expr_parse_string
2741 in the newly corrected fashion.
2742 * src/expr-name.c (expr_name_create): Idem, require a ParseError
2743 struct to be passed instead of a char** aswell.
2744 * src/parse-util.c (parse_text_value_or_expr): Idem.
2745 * src/sheet-object-widget.c (cb_checkbox_config_clicked): Idem.
2746 * src/test-parser.c (main): Idem.
2747 * src/xml-io.c (xml_cell_set_array_expr): Idem.
2749 * src/sheet.c (sheet_clone_names): Use expr_name_create which now
2750 uses ParseError instead of char **.
2751 * src/xml-io.c (xml_read_names): Idem.
2753 2001-04-23 Morten Welinder <terra@diku.dk>
2755 * src/GNOME_Gnumeric.xml: Define a few more outline commands, just
2758 2001-04-22 Jody Goldberg <jgoldberg@home.com>
2760 * src/commands.c (cmd_colrow_outline_change) : Extend logic to support
2761 having collapse buttons at the start or end of the range. Fix a few
2764 2001-04-21 Jody Goldberg <jgoldberg@home.com>
2766 * src/colrow.c (colrow_visibility) : Don't toggle the visibility of
2767 collapsed regions even if we are only hiding things. It will make a
2770 * src/workbook-control-gui.c (wbcg_menu_state_sheet_prefs) : add some
2771 new prefs for outline mode.
2773 * src/colrow.c (colrow_adjust_outline_dir) : new stub. implement
2776 * src/sheet-control-gui.c (scg_set_gutters) : delete.
2777 (scg_resize) : split from.
2778 (scg_set_zoom_factor) : here. change signature to use zoom associated
2779 with sheet. No need to pass it in.
2781 * src/sheet.c (sheet_col_row_gutter) : Use scg_resize.
2782 (sheet_set_zoom_factor) : signature change.
2783 (sheet_adjust_preferences) : Adjust signature to optionally call
2786 * src/item-bar.c (compute_pixels_from_indent) : Support disabling
2789 2001-04-20 Jody Goldberg <jgoldberg@home.com>
2791 * src/sheet.c (sheet_new) : init outline_symbols_{below,right},
2792 and display_outlines
2794 2001-04-21 Jon K Hellan <hellan@acm.org>
2796 * configure.in (have_gda): Today, gda plugin compiles again with
2797 CVS libgda. Bump required version to 0.2.4.
2799 2001-04-20 Jon K Hellan <hellan@acm.org>
2801 * configure.in : Make gda plugin optional. Check for suitable
2802 versions - present CVS version doesn't compile.
2804 2001-04-19 Jody Goldberg <jgoldberg@home.com>
2806 * src/embeddable-grid.c (embeddable_grid_init_anon) : fix leak.
2808 * src/workbook.c (workbook_sheet_rename) : fix error message.
2809 (workbook_sheets) : constness.
2810 (workbook_sheet_count) : ditto.
2811 (workbook_sheet_index_get) : ditto.
2813 2001-04-18 Jody Goldberg <jgoldberg@home.com>
2815 * src/sheet.c (sheet_cell_set_expr) : clear old span when an
2816 expression is assigned.
2817 (sheet_cell_set_text) : ditto.
2819 * src/application.c (application_init) : add new icons.
2821 * src/workbook-control-gui.c : Use the new icons.
2822 * src/GNOME_Gnumeric.xml : ditto.
2824 2001-04-18 Jon K Hellan <hellan@acm.org>
2826 * src/sheet-control-gui.c (scg_rangesel_cursor_extend,
2827 scg_rangesel_cursor_bounds, scg_rangesel_horizontal_move,
2828 scg_rangesel_vertical_move, scg_rangesel_horizontal_extend,
2829 scg_rangesel_vertical_extend, scg_rangesel_cursor_extend): Use
2830 value of item_cursor from after GnumericSheet method has been
2833 * src/workbook-edit.[ch] (workbook_get_entry,
2834 workbook_get_entry_logical): Change return type to
2836 (workbook_set_entry): Change type of entry argument to
2839 * src/gnumeric-sheet.c (move_cursor): Move to scg::scg_move_cursor
2840 (cursor_horizontal_move): Move to scg::scg_cursor_horizontal_move
2841 (cursor_horizontal_extend): Move to
2842 scg::scg_cursor_horizontal_extend
2843 (cursor_vertical_move): Move to scg::scg_cursor_vertical_move
2844 (cursor_vertical_extend): Move to scg::scg_cursor_vertical_extend
2845 (selection_remove_selection_string,
2846 selection_insert_selection_string): Remove. GnumericExprEntry
2847 widget now handles this.
2848 (start_cell_selection_at): Rename to start_range_selection_at.
2849 (start_cell_selection): Rename to start_range_selection.
2850 (gnumeric_sheet_start_cell_selection): Rename to
2851 gnumeric_sheet_start_range_selection.
2852 (gnumeric_sheet_stop_cell_selection): Rename to
2853 gnumeric_sheet_stop_range_selection. Remove clear_string parameter
2854 and selection string manipulation.
2855 (rangesel_horizontal_move): Make non-static, rename to
2856 gnumeric_sheet_rangesel_horizontal_move, remove selection string
2858 (rangesel_vertical_move): Make non-static, rename to
2859 gnumeric_sheet_rangesel_vertical_move, remove selection string
2861 (rangesel_horizontal_extend): Make non-static, rename to
2862 gnumeric_sheet_rangesel_horizontal_extend, remove selection string
2864 (rangesel_vertical_extend): Make non-static, rename to
2865 gnumeric_sheet_rangesel_vertical_extend, remove selection string
2867 (gnumeric_sheet_key_mode_sheet): Use movefn's from scg instead of
2870 * src/gnumeric-sheet.h (gnumeric_sheet_start_cell_selection):
2871 Rename to gnumeric_sheet_start_range_selection.
2872 (gnumeric_sheet_stop_cell_selection): Rename to
2873 gnumeric_sheet_stop_range_selection. Remove clear_string
2875 (gnumeric_sheet_rangesel_horizontal_move,
2876 gnumeric_sheet_rangesel_vertical_move,
2877 gnumeric_sheet_rangesel_horizontal_extend,
2878 gnumeric_sheet_rangesel_vertical_extend): Declare.
2880 * src/gnumeric-util.[ch] (gnumeric_entry_at_subexpr_boundary_p):
2881 Rename to gnumeric_expr_entry_at_subexpr_boundary_p and move to
2882 gnumeric_expr_entry widget.
2884 * src/item-grid.c (item_grid_button_1, item_grid_event): Use scg
2885 methods instead of methods from GnumericSheet.
2887 * src/sheet.[ch] (sheet_stop_cell_selection): Rename to
2888 sheet_stop_range_selection.
2890 * src/sheet-control-gui.c (scg_colrow_select): Use scg methods
2891 instead of methods from GnumericSheet.
2892 (scg_stop_editing): Add call to scg_stop_cell_selection.
2893 (scg_range_selection_changed): New function. Notify ExprEntry that
2894 the expression range has changed.
2895 (scg_move_cursor): Moved here from GnumericSheet.
2896 (scg_rangesel_cursor_extend): Add call to
2897 scg_range_selection_changed.
2898 (scg_rangesel_cursor_bounds, scg_rangesel_horizontal_move,
2899 scg_rangesel_vertical_move, scg_rangesel_horizontal_extend,
2900 scg_rangesel_vertical_extend): New functions. Call GnumericSheet
2901 counterpart and notify ExprEntry.
2902 (scg_cursor_horizontal_move, scg_cursor_horizontal_extend,
2903 scg_cursor_vertical_move, scg_cursor_vertical_extend): Moved here
2905 (scg_get_sel_cursor_pos): New function. Return selection cursor
2908 * src/sheet-control-gui.h (scg_range_selection_changed,
2909 scg_move_cursor, scg_rangesel_cursor_bounds,
2910 scg_rangesel_horizontal_move, scg_rangesel_vertical_move,
2911 scg_rangesel_horizontal_extend, scg_rangesel_vertical_extend,
2912 scg_cursor_horizontal_move, scg_cursor_vertical_move,
2913 scg_cursor_horizontal_extend, scg_cursor_vertical_extend,
2914 scg_get_sel_cursor_pos): Declare.
2916 * src/sheet-control-gui.[ch] (scg_stop_cell_selection): Rename to
2917 scg_stop_range_selection. Notify ExprEntry that range selection
2920 * src/sheet-object-widget.c (cb_checkbox_config_focus): Call
2921 gnumeric_expr_entry_select_absolute.
2922 (sheet_widget_checkbox_user_config): Use GnumericExprEntry. Attach
2925 * src/workbook-control-gui.c (cb_notebook_switch_page): Use new
2926 function name sheet_stop_range_selection.
2928 * src/workbook-control-gui-priv.h (struct
2929 _WorkbookControlGUI::struct edit_line): entry and temp_entry are
2930 now GnumericExprEntries.
2931 (struct _WorkbookControlGUI): Remove select_abs_col,
2932 select_abs_row, select_full_col, select_full_row and
2935 * src/workbook-control-gui.c (wbcg_finish_editing,
2936 wb_edit_key_pressed, cb_autofunction, workbook_setup_edit_area,
2937 auto_complete_matches): Entry must now be cast to GtkEntry.
2938 (workbook_control_gui_init): select_abs_col, select_abs_row,
2939 select_full_col, select_full_row and select_single_cell no longer
2942 * src/workbook-edit.c (workbook_finish_editing, entry_changed,
2943 workbook_start_editing_at_cursor): entry must now be cast to
2945 (workbook_start_editing_at_cursor): Attach scg to
2946 ExprEntry. wbcg->select_abs_col and select_abs_row no longer
2948 (workbook_edit_select_absolute): Move to ExprEntry widget.
2949 (workbook_edit_toggle_absolute): New function. Probably remove it
2951 (workbook_edit_init): Remove redundant 'g_assert != NULL'. Use
2952 GnumericExprEntry widget.
2954 2001-04-17 Jody Goldberg <jgoldberg@home.com>
2956 * src/workbook-control-gui.c (wbcg_init_state) : implement.
2958 2001-04-16 Jody Goldberg <jgoldberg@home.com>
2960 s/workbook_control_sheets_init/workbook_control_init_state/
2962 * src/commands.c (command_setup_combos) : new function to initialize
2963 the undo/redo combos into a known state.
2964 * src/workbook-control.c (workbook_control_sheets_init) : called here.
2966 * src/workbook-control.c (wb_control_change_view) : new virtual.
2967 (workbook_control_set_view) : called here.
2969 2001-04-17 Jody Goldberg <jgoldberg@home.com>
2971 * src/workbook-edit.c (workbook_finish_editing) : fix. We need to
2972 ignore the leading '=' or '@'.
2974 2001-04-17 Jon K Hellan <hellan@acm.org>
2976 * configure.in: Fix typo
2978 2001-04-16 Jody Goldberg <jgoldberg@home.com>
2980 * configure.in : bump GAL version reqs.
2982 * src/workbook-format-toolbar.c (workbook_create_format_toolbar) :
2983 Jump to updated interface. Partially fix the shared group problems.
2985 2001-04-15 Almer S. Tigelaar <almer@gnome.org>
2987 * src/item-grid.c : Within all functions
2988 where the ItemGrid is a variable, s/item_grid/ig,
2991 2001-04-15 Jody Goldberg <jgoldberg@home.com>
2993 * src/item-grid.c (item_grid_draw) : Hide merged cells.
2994 (item_grid_draw_merged_range) : calculate the size the same way we do
2997 * src/workbook-control-gui.c (wbcg_finish_editing) : new virtual
2998 (workbook_control_gui_ctor_class) : connect it here.
2999 (wbcg_sheet_remove_all) : be sure we are no longer editing.
3001 * src/workbook-control-priv.h : new virtual.
3002 * src/workbook-control.c : ditto.
3003 * src/workbook-control.h : ditto.
3005 * src/colrow.c (colrow_visibility) : One last potential NULL.
3007 * src/graph-vector.c : some portability fixes.
3009 2001-04-15 Almer S. Tigelaar <almer@gnome.org>
3011 * src/parser.y : Add detailed parser error messages.
3013 * src/workbook-edit.c (workbook_finish_editing) : Abort
3014 if the expression is invalid and return a boolean indicating
3017 * src/expr.c (expr_parse_string): Set error message to the
3018 result of gnumeric_expr_parser.
3020 * src/parse-util.c (parse_error_init) : Properly initialize
3021 begin and end character.
3023 * src/gnumeric-sheet.c (gnumeric_sheet_key_mode_sheet): Don't
3024 change the cursor position if workbook_finish_editing failed.
3025 (move_cursor): Idem.
3027 * src/item-grid.c (item_grid_button_1): Idem.
3029 2001-04-15 Almer S. Tigelaar <almer@gnome.org>
3031 * src/preview-grid.c
3032 (preview_grid_realize) : Remove grid gc.
3033 (preview_grid_unrealize) : Idem.
3036 (item_grid_realize) : Use gc.fill, gc.cell
3037 and gc.empty instead of fill_gc, etc.
3038 (item_grid_unrealize) : Idem.
3039 (item_grid_draw_merged_range) : Idem.
3040 (item_grid_draw_background) : Idem.
3041 (item_grid_draw) : Idem.
3043 2001-04-15 Almer S. Tigelaar <almer@gnome.org>
3045 * src/preview-grid-controller.c,
3046 src/preview-grid-controller.h : Remove entirely, the
3047 preview-grid-controller abstraction is no longer
3050 2001-04-15 Almer S. Tigelaar <almer@gnome.org>
3052 * src/preview-grid.c (pgrid_get_style) : Calls upon
3053 cb_cell_get_style, if NULL use default.
3054 (pg_get_row_height) : Retrieve row height.
3055 (pg_get_col_width) : Retrieve col width.
3056 (pg_get_row_offset) : Get offset of row.
3057 (pg_get_col_offset) : Get offset of column.
3058 (pg_construct_cell) : Construct a cell from a value.
3059 (pg_destruct_cell) : Destruct a cell.
3060 (preview_grid_realize) : Initialize default mstyle.
3061 (preview_grid_unrealize) : Free default mstyle.
3062 (preview_grid_set_arg) : Add support for row height and col
3064 (pg_style_get_row) : Use pg_* routines.
3065 (preview_grid_draw) : Idem.
3067 2001-04-13 Jody Goldberg <jgoldberg@home.com>
3069 * idl/Makefile.am (dist-hook) : automate removing the generated files.
3071 * src/workbook-control-gui.c (workbook_menu_data_outline) : new menu.
3073 * src/Makefile.am : workbook-control-bonobo is not ready for prime
3076 2001-04-13 Jon K Hellan <hellan@acm.org>
3078 * src/workbook-control-gui.c (workbook_control_gui_init): Use
3079 gtk_idle_add to postpone clipboard setup. For mysterious reasons,
3080 connecting callbacks to the table doesn't work. Toplevel does
3081 work, but we must wait until we live inside a toplevel.
3083 * src/gui-clipboard.c (x_selection_received,
3084 x_clipboard_bind_workbook): Use wb_control_gui_toplevel to
3087 * src/gui-clipboard.[ch] (x_clipboard_bind_workbook): Change
3088 signature to make it callable as an idle function. Make it
3089 determine the toplevel from
3091 2001-04-13 Jody Goldberg <jgoldberg@home.com>
3093 * src/style.c (font_init) : rename fontmap -> fontmap2 for newer
3094 versions of gnome-print.
3096 2001-04-12 Jody Goldberg <jgoldberg@home.com>
3098 * src/Makefile.am : rename gnumeric.xml GNOME_Gnumeric.xml.
3100 * src/sheet.c (sheet_col_add) : update the max outline_level.
3101 (sheet_row_add) : ditto.
3103 * src/xml-io.c (xml_read_colrow_info) : restore the col/row outline
3105 (xml_write_colrow_info) : store it here.
3107 * src/colrow.c (colrow_set_visibility) : don't collapse things unless
3108 they are at the end of the region. Always uncollapse things.
3110 2001-04-11 Jody Goldberg <jgoldberg@home.com>
3112 * src/item-bar.c (item_bar_draw) : tweak the redraw a bit to match
3115 * src/mstyle.c (mstyle_elements_equal) : remove pointless asserts and
3117 (mstyle_element_equal) : Stop passing structs.
3118 (mstyle_elements_equal) : adjust here.
3119 (mstyle_elements_compare) : and here.
3121 2001-04-12 Morten Welinder <terra@diku.dk>
3123 * src/plugin-util.c: Portability fix.
3125 2001-04-12 Jody Goldberg <jgoldberg@home.com>
3127 * src/commands.c (cmd_paste_copy_undo) : Make the corner of the
3128 restored region visible.
3129 (cmd_autofill_undo) : Ditto.
3130 (cmd_autofill_redo) : Ditto.
3131 (cmd_colrow_outline_change) : Uncollapsing things should work better
3134 * src/colrow.c (colrow_set_visibility) : collapse state changes can
3135 occur more than once within a range.
3137 * src/sheet.c (sheet_col_row_gutter_pts) : simplify, no need to store
3138 sizes in pts. Outline level is enough.
3139 s/sheet_col_row_gutter_pts/sheet_col_row_gutter/
3141 2001-04-10 Jody Goldberg <jgoldberg@home.com>
3143 * src/cellspan.c (cell_calc_span) : fix chema's spanning problem.
3145 * src/workbook-control-gui.c (workbook_menu_data) : Add an icon for
3148 2001-04-9 Jody Goldberg <jgoldberg@home.com>
3150 s/cmd_hide_selection_colrow/cmd_colrow_hide_selection/
3152 * src/commands.c (cmd_colrow_outline_change) : new wrapper for
3153 colrow_hide that handled outline changes.
3155 * src/workbook-control-gui.c (cb_insert_{cols,rows}) : cancel edit.
3156 (cb_select_auto_expr) : return a value.
3158 * src/colrow.c (cb_col_row_visibility) : Use get rather than fetch.
3159 (colrow_find_outline_bound) : new function.
3160 (cb_colrow_visibility) : turn this into a wrapper for.
3161 (colrow_visibility) : this, and add honour_collapse flag.
3162 invert the search to go fro mthe end to the start in preparation for
3163 supporting the honour_collapse flag. Insert the items into a sorted
3164 list in case we want to merge them some day.
3165 (colrow_get_outline_toggle) : use new routine here too.
3167 2001-04-05 Jody Goldberg <jgoldberg@home.com>
3169 * src/item-bar.c (item_bar_event) : Doh! The outline events are
3170 controled by the minor coordinate.
3172 2001-04-01 Jody Goldberg <jgoldberg@home.com>
3174 * src/main.c (gnumeric_main) : shut plugins down first.
3176 2001-04-04 Morten Welinder <terra@diku.dk>
3178 * src/style.c (font_init): Improve error message. Constify.
3180 2001-04-04 Morten Welinder <terra@diku.dk>
3182 * src/style.c (font_init): Refer to bugzilla, not bugs.
3184 2001-04-01 Zbigniew Chyla <cyba@gnome.pl>
3187 (plugin_db_activate_saved_active_plugins): Don't update saved active
3188 plugin ids if PLUGIN_DEBUG is defined.
3189 (plugins_shutdown): Update saved active plugin ids only if needed.
3191 2001-04-01 Almer S. Tigelaar <almer@gnome.org>
3194 (cmd_ins_del_colrow_redo): Don't mirror the size of the
3195 selected cols/rows, instead look at the next visible col/row
3196 to the top/left for the size.
3197 (cmd_hide_colrow_correct_selection): Pass extra "forward" parameter
3198 value to colrow_find_adjacent_visible.
3200 * src/colrow.h, src/colrow.c
3201 (colrow_find_adjacent_visible): Add optional "forward" parameter.
3202 If unset it will seek to the right/bottom otherwise to the left/top.
3204 2001-03-31 Zbigniew Chyla <cyba@gnome.pl>
3206 * src/plugin.[ch]: Replaced PLUGIN_MESSAGE macro with plugin_message
3207 function to avoid portability problems (some compilers don't support
3208 vararg macros), added "level" argument.
3210 * src/plugin-loader.c (gnumeric_plugin_loader_load,
3211 gnumeric_plugin_loader_unload): Adjusted to plugin.h.
3213 2001-03-30 Jody Goldberg <jgoldberg@home.com>
3215 * src/workbook-control-gui.c (wbcg_sheet_remove_all) : clear the
3216 notebook BEFORE deleting it to avoid updating during destuction.
3218 * src/cellspan.c (cell_calc_span) : Cells in hidden columns can not
3221 * src/file.c (file_finish_load) : no need to manually respan this will
3222 happen via sheet_update. This gives us a nice speed up.
3224 * src/sheet.c (sheet_cell_calc_span) : don't reregister spans that
3226 (sheet_new) : init all flags to true to ensure things get updated.
3228 * src/main.c : remove style_debug option tha was unused.
3229 * src/mstyle.c (mstyle_elements_equal) : It was only mostly unused :-)
3231 * src/workbook-control-gui.c (wbcg_menu_state_sheet_count) : fix.
3233 * src/item-bar.c (is_pointer_on_division) : robustify in the face of
3234 clicking out of bounds.
3235 (item_bar_event) : ditto, also simplfy a bit.
3237 2001-03-30 Zbigniew Chyla <cyba@gnome.pl>
3239 * src/plugin.h: Commented out PLUGIN_DEBUG and PLUGIN_ALWAYS_LOAD
3242 2001-03-29 Morten Welinder <terra@diku.dk>
3244 * configure.in (try_python): Fix redirections and don't use the
3245 non-standard "grep -q".
3247 2001-03-29 Morten Welinder <terra@diku.dk>
3249 Responding to lots of bug reports from drk@sgi.com:
3251 * src/application.c (application_display_dpi_get): Don't
3252 explicitly inline. (The compiler hopefully will by itself.)
3254 * src/sheet-object-widget.c (DEP_TO_CHECKBOX): Avoid pointer
3255 arithmetic on void pointers.
3257 * src/item-bar.c: Don't use zero-sized array.
3259 2001-03-29 Zbigniew Chyla <cyba@gnome.pl>
3261 * src/plugin-service.c (plugin_service_file_opener_probe_func):
3262 Print an error on terminal before ignoring it.
3264 2001-03-28 Zbigniew Chyla <cyba@gnome.pl>
3267 (sheet_update): Register idle function to update "auto_expression"
3268 instead of doing this immediately. Calculating a sum of many values
3269 may take a looong time.
3270 (sheet_update_auto_expr_idle_func): New function (code moved from
3271 sheet_update) updating "auto_expression" in idle loop.
3273 * sheet-priv.h (struct _SheetPrivate): Added auto_expr_idle_id
3276 2001-03-26 Morten Welinder <terra@diku.dk>
3278 * src/workbook.c (workbook_cells): New function, extracted from
3279 cmd_search_replace_do.
3281 * src/sheet.c (sheet_cells): New function, extracted from
3282 cmd_search_replace_do.
3284 * src/cell.c (cell_has_comment_pos): New function for those cells
3285 that aren't really there.
3287 * src/commands.c (cmd_search_replace_do): Use workbook_cells and
3289 (cmd_search_replace_do_cell): Change to take position instead of
3290 cell. Handle missing cells without crashing.
3291 (cmd_search_replace_undo, cmd_search_replace_redo): Fix for
3292 missing cells with comments.
3294 2001-03-25 Almer S. Tigelaar <almer@gnome.org>
3297 (cmd_ins_del_colrow_redo): Resize inserted columns/rows
3298 to have the same size of the columns/rows that previously
3299 occupied the same space.
3301 2001-03-25 Almer S. Tigelaar <almer@gnome.org>
3304 (cmd_ins_del_colrow_undo): Re-ant the original cut selection.
3305 (cmd_ins_del_colrow_redo): Re-ant accounting for the shift in
3307 (cmd_ins_del_colrow_destroy): Free stored cut range.
3308 (cmd_ins_del_colrow): Store the cut range if any.
3310 2001-03-23 Almer S. Tigelaar <almer@gnome.org>
3312 * src/about.c : Make some small changes and add Zbigniew.
3314 2001-03-23 Morten Welinder <terra@diku.dk>
3316 * src/gnumeric-util.c (gnumeric_glade_group_value): Function moved
3317 from dialog-search-replace.c.
3319 2001-03-21 Zbigniew Chyla <cyba@gnome.pl>
3321 * src/gutils.h (g_vector_free_custom macro): Fixed stupid bug.
3323 2001-03-20 Zbigniew Chyla <cyba@gnome.pl>
3325 Moved XL support from Gnumeric binary into real plugin.
3328 (gnumeric_libs): Removed ../plugins/excel/libexcel.a
3332 - include "../plugins/excel/boot.h"
3333 - xxx_debug variables
3334 - (gnumeric_popt_options) excel debugging options
3335 - excel_init() and excel_shutdown() calls
3337 2001-03-20 Zbigniew Chyla <cyba@gnome.pl>
3339 Added support for plugin dependencies + some fixes.
3341 * src/gutils.h (g_list_to_vector, g_vector_free_custom):
3342 New macros. (used macros instead of functions to avoid casting and
3343 pointer size problems - ANSI C doesn't guarantee that
3344 sizeof (void *) == sizeof (something_else *).
3346 * src/plugin-loader.c
3347 (gnumeric_plugin_loader_load): Load required plugin dependencies
3348 before the plugin itself, increment n_deps for every loaded
3349 dependency (by calling plugin_dependencies_inc_dependants).
3350 (gnumeric_plugin_loader_unload): New function.
3351 (gnumeric_plugin_loader_load_service): Increment number of loaded
3352 services if loaded succesfully.
3353 (gnumeric_plugin_loader_unload_service): Decrement number of loaded
3354 services if unloaded succesfully, unload plugin if it reaches zero.
3356 * src/plugin-loader.h
3357 (struct _GnumericPluginLoader): Added n_loaded_services.
3358 (gnumeric_plugin_loader_unload): New function.
3360 * src/plugin-service.c:
3361 (plugin_service_file_opener_open_func,
3362 plugin_service_file_saver_save_func):
3363 Used gnumeric_io_error_occurred (and gnumeric_io_clear_error) when
3367 (plugins_active_by_default): Array containing ids of "standard"
3368 plugins. These will be active by default.
3369 (struct _PluginDependency): New struct.
3370 (struct _PluginInfo): Added dependencies_v, d_deps. Replaced
3371 service_list with services_v (vector in place of list).
3372 (plugin_info_get_config_prefix, plugin_dependency_get_plugin_info,
3373 plugin_info_read_dependency_list, plugin_dependency_free,
3374 plugin_inc_dependants, plugin_dec_dependants,
3375 plugin_dependencies_inc_dependants,
3376 plugin_dependencies_dec_dependants,
3377 plugin_load_dependencies):
3379 (plugin_info_provides_loader_by_type_str, plugin_info_free):
3380 Adjusted to service_list -> services_v change.
3381 (plugin_info_read): Read (optional) dependencies, adjusted to
3382 service_list -> services_v change.
3384 Activate required dependencies before the plugin itself.
3385 Increment n_deps for every activated dependency (by calling
3386 plugin_dependencies_inc_dependants).
3387 Adjusted to service_list -> services_v change.
3388 (deactivate_plugin):
3389 Decrement n_deps for every activated dependency (by calling
3390 plugin_dependencies_dec_dependants).
3391 Adjusted to service_list -> services_v change.
3392 (plugin_can_deactivate):
3393 Return FALSE if any of n_deps > 0.
3394 Adjusted to service_list -> services_v change.
3395 (plugin_list_sort_by_dependency): Removed.
3396 (plugin_db_activate_plugin_list): Removed sorting.
3397 (plugin_db_init): Always activate new plugin if it's defined in
3398 plugins_active_by_default array.
3401 (PluginDependencyType): New enum.
3402 (plugin_load_dependencies,
3403 plugin_inc_dependants, plugin_dec_dependants,
3404 plugin_dependencies_inc_dependants,
3405 plugin_dependencies_dec_dependants,
3406 plugin_info_get_config_prefix): New functions.
3408 2001-03-20 Zbigniew Chyla <cyba@gnome.pl>
3410 * src/io-context-priv.h:
3411 (struct _IOContext): Added error_occurred field.
3414 (gnumeric_io_context_new): Set error_occurred to FALSE by default.
3415 (gnumeric_io_error_system, gnumeric_io_error_read,
3416 gnumeric_io_error_save): Set error_occurred to TRUE.
3417 (gnumeric_io_error_unknown, gnumeric_io_clear_error,
3418 gnumeric_io_error_occurred): New functions.
3421 (gnumeric_io_error_unknown, gnumeric_io_clear_error,
3422 gnumeric_io_error_occurred): New functions.
3424 2001-03-18 Jody Goldberg <jgoldberg@home.com>
3426 * src/workbook-control-gui.c (wb_edit_key_pressed) : handle failure
3429 * src/colrow.c (colrow_foreach) : Doh!
3431 * src/item-bar.c (item_bar_event) : Now that we are zooming this
3432 canvas we need to transform the coordinates.
3434 2001-03-16 Jody Goldberg <jgoldberg@home.com>
3436 * src/item-bar.c (item_bar_calc_size) : rename from
3437 item_bar_fonts_init.
3439 * src/sheet-control-gui.c (scg_set_zoom_factor) : prepare for panes by
3440 zooming the col/row header canvases. We need this as we transition
3441 to using gnumeric-sheets instead of canvases to hold the item-bars.
3443 2001-03-15 Jody Goldberg <jgoldberg@home.com>
3445 * src/colrow.c (colrow_equal) : handle outline&collapse.
3446 (colrow_copy) : ditto.
3448 * src/item-bar.c (outline_button_press) : new function.
3449 (item_bar_event) : used here.
3451 2001-03-15 Jody Goldberg <jgoldberg@home.com>
3453 * src/item-bar.c (compute_pixels_from_pts) : new function.
3454 (item_bar_fonts_init) : resize the indent gutters based on the zoom.
3455 (item_bar_realize) : add another gc for outline drawing.
3456 (item_bar_unrealize) : ditto.
3457 (item_bar_draw) : implement drawing for groupings.
3458 (set_cursor) : handle cursor in the presence of groupings.
3460 2001-03-14 Jody Goldberg <jgoldberg@home.com>
3462 * Makefile.am : update the handling of the oaf file.
3464 * src/sheet.c (sheet_col_row_default_calc) : rename from
3465 sheet_col_row_default_init.
3467 2001-03-13 Jody Goldberg <jgoldberg@home.com>
3469 * src/xml-io.c (xml_write_print_repeat_range) : PrintRepeatRange now
3470 uses a simple Range.
3471 (xml_read_print_repeat_range) : ditto.
3472 * src/print-info.c (print_info_new) : ditto.
3473 (save_range) : Ditto.
3474 * src/dialogs/dialog-printer-setup.c (do_fetch_page_info) : ditto.
3475 * src/print.c (print_range_used_units) : ditto.
3476 (print_range_right_then_down) : ditto.
3477 (print_range_down_then_right) : ditto.
3478 (print_page_repeated_intersect) : ditto.
3479 (print_page_repeated_cols) : ditto.
3480 (print_page_repeated_rows) : ditto.
3481 (print_page) : ditto.
3483 * src/sheet-control-gui.c (scg_set_zoom_factor) : The sizing has moved
3486 * src/item-bar.c : s/orientation/is_col_header/
3487 (item_bar_fonts_init) : Init the ideal cell size.
3488 (item_bar_update) : Begin to support grouping.
3489 (item_bar_draw) : ditto.
3490 (item_bar_init) : init the new members.
3492 * src/print-cell.c (print_cell) : re-enable halign FILL.
3493 * src/cell-draw.c (cell_draw) : ditto.
3495 2001-03-17 Jody Goldberg <jgoldberg@home.com>
3499 2001-03-16 Zbigniew Chyla <cyba@gnome.pl>
3501 * configure.in: Checking if we can build a shared library depending on
3502 libpython and disabling Python support otherwise.
3504 2001-03-15 Jon K Hellan <hellan@acm.org>
3506 * src/workbook-control-gui.c (verbs): Fix the build for bonobo by
3507 ifdefing out verbs for cb_data_validate and cb_view_freeze_panes.
3509 2001-03-14 Jody Goldberg <jgoldberg@home.com>
3511 * src/item-grid.c (item_grid_event) : don't go past edges
3513 * src/parser.y : Add portability.h to help on Tru64
3515 * src/workbook-control-gui.c : disable validate and freeze for
3518 2001-03-13 Jody Goldberg <jgoldberg@home.com>
3520 * src/workbook-control-gui.c (workbook_setup_auto_calc) : the autoexpr
3521 button can not take focus.
3523 2001-03-12 Jody Goldberg <jgoldberg@home.com>
3524 For Vlad Harchev <hvv@hippo.ru> :
3526 * src/item-bar.c (item_bar_realize) : Use colours from Style.
3528 * src/print-cell.c (print_show) : new routine to assist printing non
3530 (get_width_string_n) : ditto.
3531 (get_width_string) : ditto.
3532 (print_text) : used here.
3533 (print_overflow) : here.
3534 (cell_split_text) : here.
3535 (print_cell) : and here.
3537 2001-03-11 Jody Goldberg <jgoldberg@home.com>
3539 * src/commands.c (cmd_sort_destroy) : Add some safety in preparation
3542 * src/workbook-control-gui.c (workbook_setup_auto_calc) : remove the
3543 use of the canvas to avoid label flicker. Add support for a status
3545 (wb_control_gui_set_status_text) : new function.
3547 * src/gnumeric.xml : Add Status control and reverse the order to work
3548 around probable bonobo bug.
3550 * src/sheet-control-gui.c (horizontal_scroll_offset_changed) : Use
3551 wb_control_gui_set_status_text.
3552 (vertical_scroll_offset_changed) : ditto.
3553 (scg_scrollbar_config) : ditto.
3555 2001-03-10 Almer S. Tigelaar <almer@gnome.org>
3557 * src/sheet-control-gui.c
3558 (scg_scrollbar_config): Clear scrollbar text.
3559 (vertical_scroll_offset_changed): Adjust to display hint in the scrollbar.
3560 (horizontal_scroll_offset_changed): Idem.
3562 2001-03-10 Jody Goldberg <jgoldberg@home.com>
3564 * src/sheet-control-gui.c (scg_construct) : lay some ground work for
3567 2001-03-08 Jody Goldberg <jgoldberg@home.com>
3569 * src/gnumeric-sheet.c (gnumeric_sheet_find_{col,row}) : fix off by
3570 one width/height error at far boundary.
3572 * src/xml-io.c (xml_get_print_unit) : make units case sensitive.
3574 2001-03-05 Zbigniew Chyla <cyba@gnome.pl>
3577 (AC_OUTPUT): Added plugins/python-loader/Makefile,
3578 plugins/gnome-glossary/Makefile, plugins/py-func/Makefile.
3579 Fixed Python configuration.
3581 * plugins/Makefile.am:
3582 Conditionally added plugins: python-loader, py-func, gnome-glossary.
3584 2001-03-05 Zbigniew Chyla <cyba@gnome.pl>
3586 Fixes #51316 (actually, it fixes the _real_ problem).
3588 * src/dialogs/dialog-plugin-manager.c
3589 (cb_pm_button_activate_plugin_clicked): If the plugin is already
3590 active, remove it from "marked for deactivation" list.
3591 (cb_pm_button_deactivate_plugin_clicked): If the plugin cannot be
3592 deactivated, optionally add it to "marked for deactivation" list
3593 (if the user wants to).
3594 (cb_pm_clist_row_selected):
3595 Make "Activate plugin" button sensitive for some active plugins (for
3596 those on "marked for deactivation" list).
3597 (cb_pm_clist_row_unselected):
3598 Bugfix: don't free pm_gui->current_plugin_id string.
3599 (update_plugin_manager_view):
3600 Display the plugin state after its name ("in memory", "marked for
3602 (dialog_plugin_manager): Plug leak.
3605 (plugin_info_force_mark_inactive,
3606 plugin_db_mark_plugin_for_deactivation,
3607 plugin_db_is_plugin_marked_for_deactivation): New functions.
3608 (plugins_shutdown): Set all plugins on "marked for deactivation"
3609 list as inactive before saving active plugins in configuration.
3612 (plugin_db_mark_plugin_for_deactivation,
3613 plugin_db_is_plugin_marked_for_deactivation): New functions.
3615 2001-03-05 Almer S. Tigelaar <almer@gnome.org>
3617 * src/sheet-control-gui.c
3618 (vertical_scroll_change) : Remove.
3619 (horizontal_scroll_change) : Remove.
3620 (vertical_scroll_event) : Remove.
3621 (horizontal_scroll_event) : Remove.
3622 (vertical_scroll_changed) : New function, handles the
3623 GnumericVScrollbar's "changed" signal.
3624 (horizontal_scroll_changed) : Idem for the GnumericHScrollbar.
3625 (scg_construct) : Create a gnumeric-vscrollbar instead of a
3626 gtk-vscrollbar and connect the "changed" signal do the same
3627 for gnumeric-hscrollbar.
3629 2001-03-04 Almer S. Tigelaar <almer@gnome.org>
3631 * src/workbook-control-gui.c
3632 (cb_data_validate) : New, invokes the data validation dialog.
3634 2001-03-03 Jody Goldberg <jgoldberg@home.com>
3636 * src/sheet.c (sheet_cell_calc_span) : rewrite to be less stupid.
3638 2001-03-03 Zbigniew Chyla <cyba@gnome.pl>
3640 Plugin code cleanup (removed unnecessary function arguments) + small
3644 (struct _FunctionDefinition):
3645 Removed get_full_info_callback_data field.
3646 (function_add_name_only): Removed callback_data argument.
3647 (function_def_get_full_info_if_needed, FunctionGetFullInfoCallback):
3648 Now we just pass fn_def instead of name + callback_data.
3649 (function_call_with_list):
3650 Added missing function_def_get_full_info_if_needed() call.
3652 * src/plugin-loader.[ch]
3653 (gnumeric_plugin_loader_load_service,
3654 gnumeric_plugin_loader_unload_service):
3655 Return error (instead of crashing) if service is not supported.
3656 (gnumeric_plugin_loader_is_loaded): New function.
3658 * src/plugin-service.h
3659 (struct _PluginServiceGeneral, struct _PluginServiceFileOpener,
3660 struct _PluginServiceFileSaver, _PluginServicePluginLoader):
3661 Removed unneeded plugin argument from every function.
3663 * src/plugin-service.c
3664 (plugin_service_function_group_get_full_info_callback): Get fn_def
3665 arg instead of fn_name + callback_data.
3666 (plugin_service_function_group_initialize): Store pointer to service
3667 in fn_def's user_data.
3668 Adjusted to plugin-service.h (removed plugin argument).
3670 * src/plugin-loader-module.c
3671 (gnumeric_plugin_loader_module_func_init,
3672 gnumeric_plugin_loader_module_func_can_deactivate,
3673 gnumeric_plugin_loader_module_func_cleanup,
3674 gnumeric_plugin_loader_module_func_file_probe,
3675 gnumeric_plugin_loader_module_func_file_open,
3676 gnumeric_plugin_loader_module_func_file_save,
3677 gnumeric_plugin_loader_module_func_get_full_function_info,
3678 gnumeric_plugin_loader_module_func_get_loader_type):
3679 Adjusted to plugin-service.h (removed plugin argument).
3682 s/plugin_load_loader_if_needed/plugin_get_loader_if_needed
3683 (plugin_info_get_extra_info_list): Get loader if it's not available.
3684 (plugin_info_is_loaded, plugin_info_get_loader): New functions.
3686 2001-03-02 Morten Welinder <terra@diku.dk>
3688 * src/ranges.h: Drop 24 bogus casts.
3690 * src/ranges.c (range_transpose): Drop extraneous &.
3691 (range_fragment_list_clip): Fix to work with new src/ranges.h
3693 2001-03-01 Jody Goldberg <jgoldberg@home.com>
3695 * src/workbook-control-gui.c (cb_sheet_remove) : rename from
3696 cb_edit_delete_sheet.
3698 * src/gnumeric.xml : Adopt a more consistent naming convention for
3701 * src/mstyle.c (mstyle_element_dump) : add pattern.
3703 2001-02-27 Almer S. Tigelaar <almer@gnome.org>
3706 (cmd_colrow_std_size) : Set undo descriptor for row height correctly.
3708 2001-02-27 Almer S. Tigelaar <almer@gnome.org>
3710 * src/workbook-cmd-format.c
3711 (workbook_cmd_format_column_std_width) : Implement.
3712 (workbook_cmd_format_row_std_height) : Idem.
3714 * src/commands.c, src/commands.h
3715 (cmd_colrow_std_size_undo) : New, Undo for the std
3716 row-height/col-width setting.
3717 (cmd_colrow_std_size_redo) : Idem, for redo.
3718 (cmd_colrow_std_size_destroy) : Idem.
3719 (cmd_colrow_std_size) : Entry point for std row-height/col-width
3722 2001-02-25 Jody Goldberg <jgoldberg@home.com>
3724 * src/workbook-control-gui.c (zoom_changed) : round the zoom factor
3727 * src/selection.c (sheet_selection_set_internal) : when the selection
3728 shrinks and no longer selects full cols/rows redraw the union.
3730 2001-02-25 Zbigniew Chyla <cyba@gnome.pl>
3732 * src/file.c (workbook_save_as): Fixed crash (caused by calling
3733 gnumeric_io_context_free twice).
3735 2001-02-24 Jody Goldberg <jgoldberg@home.com>
3737 * src/format.c (format_number) : Invert the logic if this test.
3738 We increment again later. So what we really want is to avoid double
3739 incrementing and avoid incrementing past the end.
3741 * src/cellspan.c (cell_calc_span) : rework when to increment
3742 boundaries. It is important not to have a span end in a hidden
3743 column or it will not be drawn. As such we need to be careful to
3744 only increment the margin args when a bound extends into a visible
3747 * src/sheet.c (sheet_regen_adjacent_spans) : check for spans before
3748 cells in case we are cutting off the span at its core.
3750 * src/colrow.c (colrow_set_visibility_list) : set all visibilities
3751 before regening spans.
3753 * src/cell-draw.c (cell_draw) : Add some warnings for cols/rows that
3756 2001-02-24 Zbigniew Chyla <cyba@gnome.pl>
3758 * plugins/applix/applix-read.c,
3759 plugins/applix/applix.h, plugins/applix/boot.c,
3760 plugins/applix/plugin.xml,
3761 plugins/dif/dif.c, /plugins/dif/plugin.xml,
3762 plugins/html/boot.c, plugins/html/html.c,
3763 plugins/html/html.h, /plugins/html/latex.c,
3764 plugins/html/latex.h, plugins/html/plugin.xml,
3765 plugins/html/roff.c, /plugins/html/roff.h,
3766 plugins/lotus-123/boot.c, plugins/lotus-123/lotus.c,
3767 plugins/lotus-123/lotus.h, plugins/lotus-123/plugin.xml,
3768 plugins/oleo/boot.c, plugins/oleo/oleo.c,
3769 plugins/oleo/oleo.h, plugins/oleo/plugin.xml,
3770 plugins/plan-perfect/pln.c, plugins/plan-perfect/plugin.xml,
3771 plugins/sc/plugin.xml, plugins/sc/sc.c,
3772 plugins/sylk/plugin.xml, plugins/sylk/sylk.c,
3773 plugins/xbase/boot.c, plugins/xbase/plugin.xml,
3774 plugins/xbase/xbase.c, plugins/xbase/xbase.h,
3775 plugins/xml2/plugin.xml, plugins/xml2/xml2.c:
3776 Export "file_opener" plugin service (+ "file_saver" for dif and html).
3777 Use ErrorInfo where needed.
3778 Use GNUMERIC_MODULE_PLUGIN_INFO_DECL macro instead of
3779 gnumeric_plugin_version[] declaration.
3781 * plugins/numtheory/numtheory.c, plugins/numtheory/plugin.xml:
3782 Export "function_group" plugin service.
3784 * plugins/gb/plugin.c, plugins/gb/plugin.xml,
3785 plugins/gda/plugin-gda.c, plugins/gda/plugin.xml,
3786 plugins/guile/plugin.c, /plugins/guile/plugin.xml,
3787 plugins/perl/perl.c, plugins/perl/plugin.xml,
3788 plugins/python/Makefile.am, plugins/python/plugin.xml,
3789 plugins/python/python.c:
3790 Export "general" plugin service.
3791 Use ErrorInfo where needed.
3792 (init_plugin, can_deactivate_plugin, cleanup_plugin): Rename and
3795 * plugins/excel/boot.c (excel_save_95, excel_save_98, excel_save,
3796 excel_probe, excel_load): Signature changes.
3798 * plugins/excel/ms-formula-write.c: Use accessor functions from
3799 func.h instead of accessing FunctionDefinition struct directly.
3801 2001-02-24 Zbigniew Chyla <cyba@gnome.pl>
3803 * src/Makefile.am: Added files: plugin-service.[ch],
3804 plugin-loader.[ch], plugin-loader-module.[ch], module-plugin-defs.h.
3806 * src/error-info.[ch] (error_info_new_from_errno): New function.
3809 (struct _FileOpener, struct _FileSaver): Moved from file.h
3810 (file_opener_get_format_description, file_opener_has_probe,
3811 file_saver_get_extension, file_saver_get_format_description):
3812 New accessor functions.
3813 (file_opener_probe, file_opener_open, file_saver_save,
3814 file_opener_set_user_data, file_opener_get_user_data,
3815 file_saver_set_user_data, file_saver_get_user_data): New
3817 (get_file_opener_by_id, get_file_saver_by_id): Removed
3818 Now using FileOpener*/FileSaver* instead of FileOpenerId/FileSaverId
3822 (struct _FileOpener, struct _FileSaver): Moved to file.c.
3825 * src/gui-file.c: Adjusted to file.[ch], now FileSaver.extension
3826 field should contain real extension (without a dot).
3829 (enum FunctionFlags, struct _FunctionDefinition): Moved from func.h
3831 (struct _FunctionCategory): Added "internal_name" and "display_name"
3832 in place of "name" field.
3833 (function_get_category_with_translation,
3834 function_category_remove_func, func_get_ref_count, function_remove,
3835 function_add_name_only): New functions.
3836 Now it's possible to load function implementation on demand (after
3837 registering function using function_add_name_only() and providing
3838 function of type FunctionGetFullInfoCallback).
3839 Rename fd and fndef to fn_def for consistency.
3841 * src/functions/fn-database.c (database_functions_init),
3842 src/functions/fn-date.c (date_functions_init),
3843 src/functions/fn-eng.c (eng_functions_init),
3844 src/functions/fn-financial.c (finance_functions_init),
3845 src/functions/fn-information.c (information_functions_init),
3846 src/functions/fn-logical.c (logical_functions_init),
3847 src/functions/fn-lookup.c (lookup_functions_init),
3848 src/functions/fn-math.c (math_functions_init),
3849 src/functions/fn-sheet.c (sheet_functions_init),
3850 src/functions/fn-stat.c (stat_functions_init),
3851 src/functions/fn-string.c (string_functions_init):
3852 Use function_get_category_with_translation, instead of
3853 function_get_category.
3856 (struct _PluginInfo): Removed many fields.
3857 (plugin_info_get_extra_info_list):
3858 Just call gnumeric_plugin_loader_get_extra_info_list.
3859 (plugin_info_peek_services_data, plugin_info_peek_loader_type_str):
3860 New accessor functions.
3861 (plugin_info_read_service_list, plugin_info_read_loader,
3863 Read services and loader info, use functions from
3864 gal/util/e-xml-utils.h everywhere.
3865 (activate_plugin, deactivate_plugin): Just activate/deactivate all
3867 (plugin_can_deactivate): Ask plugin services.
3868 (plugin_load_service, plugin_unload_service,
3869 plugin_info_offers_loader_by_type_str,
3870 plugin_loader_register_type, plugin_loader_register_id_only,
3871 plugin_loader_get_by_id, plugin_loader_is_available_by_id,
3872 plugin_list_sort_by_dependency):
3874 (plugin_db_activate_plugin_list): Activate plugins in correct order,
3875 using plugin_list_sort_by_dependency function.
3876 (plugin_info_print): Removed.
3877 (module_plugin_print_info, module_plugin_info_get_extra_info_list,
3878 module_plugin_free, module_plugin_info_read, module_plugin_activate,
3879 module_plugin_deactivate, module_plugin_can_deactivate): Removed,
3880 most code moved to plugin-loader.c and plugin-loader-module.c.
3882 * src/plugin-service.[ch]: New files, support for plugin services
3883 (five types of these so far).
3885 * src/plugin-loader.[ch]: New files, base class for plugin loaders.
3887 * src/plugin-loader-module.[ch]: New files, support for "g_module"
3890 * src/plugin-util.[ch] (gnumeric_fopen_error_info,
3891 gnumeric_open_error_info, gnumeric_mmap_error_info): New functions.
3893 * src/gutils.[ch] (g_list_free_custom, g_slist_free_custom,
3894 gnumeric_time_counter_push, gnumeric_time_counter_pop):
3897 * src/io-context-priv.h (struct _IOContext): Added error_info field.
3899 * src/io-context.[ch] (gnumeric_io_context_new,
3900 gnumeric_io_context_free, gnumeric_io_error_info_set,
3901 gnumeric_io_error_info_push, gnumeric_io_error_info_pop,
3902 gnumeric_io_error_info_clear, gnumeric_io_error_info_display,
3903 gnumeric_io_has_error_info): New functions, quick hack to add
3904 support for ErrorInfo.
3906 * src/module-plugin-defs.h: New file, should be included be every
3909 * src/auto-format.c: Use accessor function from func.h.
3911 * src/bonobo-io.c (gnumeric_bonobo_write_workbook,
3912 gnumeric_bonobo_read_workbook, gnumeric_bonobo_io_probe),
3913 src/stf.c (stf_read_workbook, stf_write_workbook),
3914 src/xml-io.[ch] (xml_probe, gnumeric_xml_read_workbook,
3915 gnumeric_xml_write_workbook):
3918 * src/workbook.c: Adjusted to
3919 workbook_load_from/gnumeric_xml_write_workbook signature change.
3921 * src/dialogs/dialog-function-select.c: Adjust to func.[ch].
3923 * src/dialogs/dialog-plugin-manager.c
3924 Adjust to plugin.[ch].
3925 (cb_pm_button_activate_plugin_clicked): Check if loader for current
3926 plugin is available, suggest activating loader plugin otherwise.
3928 2001-02-24 Morten Welinder <terra@diku.dk>
3930 * src/workbook-control-gui.c (cb_edit_search_replace_action): New
3931 function for non-modal action.
3932 (cb_edit_search_replace): Supply action callback.
3934 2001-02-24 Almer S. Tigelaar <almer@gnome.org>
3936 * src/workbook-control-gui-priv.h :
3937 Add sheet remove and sheet re-order menu items.
3939 * src/workbook-control-gui.c
3940 (wbcg_menu_state_sheet_count) : New, Take care of sheet counts
3941 dependant gui elements like the sheet remove/re-order menus.
3942 (wbcg_sheet_add) : Call menu_state_sheet_count from here.
3943 (wbcg_sheet_remove) : Idem.
3944 (workbook_control_gui_init) : Initialize the remove and re-order
3947 2001-02-24 Jody Goldberg <jgoldberg@home.com>
3949 * src/workbook-control-gui.c (workbook_control_gui_new) : Why was I
3950 protecting a generic call ? Its constituents not the caller are
3951 responsible for blocking events.
3952 (workbook_control_gui_init) : Be anal and init this just in case.
3954 2001-02-24 Almer S. Tigelaar <almer@gnome.org>
3956 * src/sheet-control-gui.c
3957 (horizontal_scroll_event) : If we reach the maximum scroll offset
3958 increase it so we can keep scrolling down.
3959 (vertical_scroll_event) : Idem.
3960 (horizontal_scroll_change) : Directly manipulate scroll offset.
3961 (vertical_scroll_change) : Idem.
3963 2001-02-23 Jody Goldberg <jgoldberg@home.com>
3965 * src/commands.c (cmd_merge_cells_redo) : reorder to handle unmerging
3967 (cmd_merge_cells_undo) : ditto.
3968 (CmdMergeCells) : no need to inherit from CmdUnmergeCells.
3969 (cmd_unmerge_cells_redo) : merge the 'internal' versions.
3970 (cmd_unmerge_cells_undo) : merge the 'internal' versions.
3972 2001-02-22 Jody Goldberg <jgoldberg@home.com>
3974 * src/style-border.c (style_border_vmargins) : remove unnecessary
3975 reference to next_sr. sr.bottom == next_sr.top
3976 For normal borders horizontal always dominates vertical.
3977 (style_border_hmargins) : Only cut corners for doubles if the corner
3980 * src/sheet.c (sheet_cursor_set_full) : new function.
3982 * src/selection.c (sheet_selection_set_internal) : Use it here.
3983 The trick is that when extending a selection to include merged cells
3984 it is possible that the edit cell is neither the base nor the move
3985 col/row. When you then shrink the selection to the pre-extended
3986 state, without the merged region, you have lost track of the corner
3987 and can easily loose the edit_position.
3989 * src/workbook-format-toolbar.c (toggled_from_toolbar) : delete this
3990 ugliness. We don't need it anymore.
3992 2001-02-20 Jody Goldberg <jgoldberg@home.com>
3994 * src/workbook-control-gui.c (wbcg_ui_update_begin) : new utility
3995 (wbcg_ui_update_end) : new utility
3997 * src/workbook-format-toolbar.c (workbook_feedback_set) : Use them
3999 (workbook_format_halign_feedback_set) : update center-across-selection
4001 (do_modify_format) : rewrite to use the format from the edit cell and
4004 * src/format.c (format_toggle_thousands) : delete.
4006 2001-02-23 Jody Goldberg <jgoldberg@home.com>
4008 * configure.in : post release version bump to 0.64.
4010 2001-02-23 Jody Goldberg <jgoldberg@home.com>
4014 2001-02-23 Jody Goldberg <jgoldberg@home.com>
4016 * src/item-grid.c (item_grid_draw_merged_range) : check for background
4017 before checking for selection.
4019 * src/sheet-merge.c (sheet_merge_add) : don't apply the borders from
4020 the corner cell to the whole region. Just the content.
4022 * src/sheet-control-gui.c (scg_comment_display) : We only need to be
4023 sure that scg::selected is a comment if we are using it and no other
4026 * src/style-border.c (print_hline) : gdk_draw_line excludes the far
4027 pixel. Make this match to keep the draw code consistent.
4028 (print_vline) : ditto.
4030 * src/print-cell.c (print_cell_range) : Use the hide_grid from the
4031 print flags not the sheet itself.
4033 * src/print.c (print_page_cells) : We now pass 'HideGridLines' so
4036 * src/print-cell.c (print_cell) : typo.
4038 2001-02-22 Jody Goldberg <jgoldberg@home.com>
4040 * src/item-edit.c (point_is_inside_range) : dont highlight ranges on
4042 (scan_at) : simplify.
4044 * src/workbook-control-gui.c (cb_notebook_switch_page) : If we are
4045 only switching pages to select a range there is no need to update
4048 * src/expr.c (eval_expr_real) : fix old typo.
4050 * src/commands.c (cmd_unmerge_cells_init) : add simple test to avoid
4052 (cmd_unmerge_cells) : check for failure.
4053 (cmd_merge_cells) : ditto.
4055 2001-02-22 Almer S. Tigelaar <almer@gnome.org>
4057 * src/preview-grid.c (preview_grid_draw): The style row
4058 init routine expect a hide gridlines parameter, so we need
4059 to pass the inverse of the preview grid's show gridlines property.
4061 2001-02-21 Jody Goldberg <jgoldberg@home.com>
4063 * src/render-ascii.c (cell_region_render_ascii) : The list reveral
4064 stuff is no longer needed. The new engine keeps only complete
4065 styles and keeps the list as a partition.
4067 * src/sheet-style.c (sheet_style_insert_colrow) : When inserting
4068 before the first row/col use the style from A/1.
4070 * src/sheet.h (SHEET_FOREACH_CONTROL) : Be really really careful about
4071 potential modifications to the list why we are walking it.
4073 2001-02-20 Jody Goldberg <jgoldberg@home.com>
4075 * src/cell.c (cell_default_halign) : add support for arrays
4076 and center booleans.
4078 2001-02-20 Jody Goldberg <jgoldberg@home.com>
4080 * src/xml-io.c (xml_write_style) : store indent.
4081 (xml_read_style) : restore indent.
4083 2001-02-20 Jody Goldberg <jgoldberg@home.com>
4085 * src/item-edit.c (item_edit_draw_text) : draw autocompletions of
4086 wrapped text nicely.
4088 2001-01-20 John Gotts <jgotts@linuxsavvy.com>
4090 * gnumeric.spec.in: Sync with new directory structure.
4092 2001-02-20 Jody Goldberg <jgoldberg@home.com>
4094 * src/item-edit.c (item_edit_draw_text) : kill warning.
4096 2001-02-20 Jody Goldberg <jgoldberg@home.com>
4098 * src/main.c : remove inclusion of embeddable-grid.h this causes
4099 problems in the release because main.c then depends on files that
4100 are only available in the ENABLE_BONOBO case.
4102 * src/item-bar.c (bar_draw_cell) : set the clip for the text. no need
4103 to clip a rectangle or shadow whose boundaries we define.
4105 * src/sheet-control-gui.c (scg_redraw_cell_region) : Handle shrinkage.
4107 2001-02-20 Jon K Hellan <hellan@acm.org>
4109 * src/item-edit.c (item_edit_draw_text): Fix wrapped line drawing
4112 2001-02-20 Morten Welinder <terra@diku.dk>
4114 * src/item-bar.c (bar_draw_cell): Fix column header drawing
4115 problem. (And possibly other weird drawing problems related to
4118 2001-02-20 Zbigniew Chyla <cyba@gnome.pl>
4120 * src/dialogs/dialog-cell-format.c (setup_color_pickers): Move
4121 variable assignments out of assertions to allow compilation with
4122 "G_DISABLE_ASSERT" defined.
4124 * src/dialogs/dialog-cell-sort.c:
4125 Use e_free_string_list() from GAL instead of newly defined
4127 (dialog_cell_sort): Plug leak.
4129 2001-02-20 Morten Welinder <terra@diku.dk>
4131 * src/regression.c (LUPDecomp): Really fix row flipping.
4133 2001-02-19 Jon K Hellan <hellan@acm.org>
4135 * src/file.h: Add level FILE_FL_MANUAL_REMEMBER. Fix typos:
4136 FILE_SAVER_ID_INVAID -> FILE_SAVER_ID_INVALID,
4137 FILE_OPENER_ID_INVAID -> FILE_OPENER_ID_INVALID.
4139 * src/file.c (file_format_register_open): Fix typo:
4140 FILE_OPENER_ID_INVAID -> FILE_OPENER_ID_INVALID.
4141 (file_format_register_save): Fix typo: FILE_OPENER_ID_INVAID ->
4142 FILE_SAVER_ID_INVALID.
4143 (cb_unregister_save, workbook_save): Fix
4144 typo: FILE_SAVER_ID_INVAID -> FILE_SAVER_ID_INVALID.
4146 * src/workbook.c (workbook_destroy): Only include in history if
4147 file_format_level >= FILE_FL_MANUAL_REMEMBER.
4148 (workbook_new, workbook_set_saveinfo): Fix typo:
4149 FILE_SAVER_ID_INVAID -> FILE_SAVER_ID_INVALID.
4151 * src/xml-io.c: Fix typos: FILE_SAVER_ID_INVAID ->
4152 FILE_SAVER_ID_INVALID, FILE_OPENER_ID_INVAID ->
4153 FILE_OPENER_ID_INVALID.
4155 2001-02-19 Jody Goldberg <jgoldberg@home.com>
4157 * src/commands.c (cmd_format) : Optionally supply a name.
4159 * src/cell-draw.c (cell_draw) : numbers with indents turn to hashes
4160 too. Hmm, I do not like the hash marks.
4162 * src/print-cell.c (print_cell) : merge in the indent code.
4164 2001-02-19 Morten Welinder <terra@diku.dk>
4166 * src/regression.c (LUPDecomp): Fix row flipping.
4167 (general_linear_regression): Survive failing LUPDecomp.
4169 2001-02-19 Jody Goldberg <jgoldberg@home.com>
4171 * src/rendered-value.c (rendered_value_calc_size_ext) : tune the size
4174 * src/workbook-control-gui.c (show_gui) : kill warning.
4176 * src/workbook-format-toolbar.c (cb_format_dec_indent) : implement.
4177 (cb_format_inc_indent) : ditto.
4179 * src/gnumeric.xml : Move the toggle specs into commands.
4181 * src/workbook-control-gui.c (toggle_util) : new func.
4182 (TOGGLE_HANDLER) : util macro to simplify gnome/bonobo transition.
4183 (workbook_control_gui_init) : use TOGGLE_REGISTER for the bonobo case.
4185 2001-02-19 Jon K Hellan <hellan@acm.org>
4187 * src/workbook-control-gui.c (show_gui): Call
4188 scg_adjust_preferences only if sheet exists.
4190 2001-02-19 Jody Goldberg <jgoldberg@home.com>
4192 * src/commands.c (cmd_paste_cut_redo) : update the selection after the
4193 move to handle merged cells.
4195 * src/workbook-format-toolbar.c : Add a separator and rename the
4196 callbacks to follow std conventions.
4198 2001-02-19 Jody Goldberg <jgoldberg@home.com>
4200 * src/workbook-control-gui.c (wbcg_menu_state_enable_insert) : There
4201 has not been a need for the menu path for a while. Why was this
4203 (toggle_menu_item) : clean up the #ifdef to make this readable.
4204 (wbcg_menu_state_sheet_prefs) : Finish the bonobo case.
4206 2001-02-19 Jody Goldberg <jgoldberg@home.com>
4208 * src/workbook-control-gui.c (show_gui) : It seems like we need to
4209 show_all for the bonobo build, I don't know why. Add an explicit
4210 call the scg_adjust_preferences to rehide headers that may be shown
4213 * src/cellspan.c (cell_calc_span) : Even if the content fits the
4214 indent may cause a span.
4216 * src/style.c (required_updates_for_style) : flag an indent change as
4217 something that requires a resize.
4219 2001-02-18 Jody Goldberg <jgoldberg@home.com>
4221 * src/embeddable-grid.c (set_header_visibility) : delete.
4223 * src/workbook-control-gui.c (cb_change_zoom) : Block recursion here.
4224 (zoom_changed) : not here.
4225 (toggle_menu_item) : add warning for bonobo case.
4226 (workbook_setup_edit_area) : add show_all to compensate for changes in
4229 2001-02-18 Jody Goldberg <jgoldberg@home.com>
4231 * src/workbook-control-gui.c : Back port the help text from the bonobo
4233 (workbook_menu_edit_select) : Use Meta-space for select row,
4234 Shift-space does not work well.
4235 (wbcg_close_control) : fix typo (bug 51058)
4237 * src/workbook-edit.c (workbook_finish_editing) : Editing is local to
4239 (workbook_start_editing_at_cursor) : ditto.
4241 2001-02-18 Jody Goldberg <jgoldberg@home.com>
4243 * src/sheet-control-gui.c : reindent some ugliness from the rename.
4245 * src/sheet.c (sheet_create_editor) : delete.
4247 2001-02-18 Jody Goldberg <jgoldberg@home.com>
4249 s/display_zero/hide_zero/ + necessary logic inversions
4250 s/show_grid/hide_grid/ + necessary logic inversions
4251 s/show_col_header/hide_col_header/ + necessary logic inversions
4252 s/show_row_header/hide_row_header/ + necessary logic inversions
4253 s/wb_control_paste_special_enable/wb_control_menu_state_paste_special/
4254 s/wbcg_paste_special_enable/wbcg_menu_state_paste_special/
4256 * src/workbook-format-toolbar.c (workbook_format_toolbutton_update) :
4257 Simplfy and use wbcg::updating_ui.
4258 (workbook_format_halign_feedback_set) : use simplified interface.
4259 (workbook_feedback_set) : Ditto.
4260 (set_selection_halign) : If the current alignment is already set to
4261 the target type revert to general.
4263 * src/preview-grid.c (preview_grid_draw) : cell_draw::h_center
4264 will default to width / 2.
4265 * src/item-grid.c (item_grid_draw_merged_range) : Ditto.
4266 (item_grid_draw) : Ditto.
4268 * src/print-cell.c (print_cell) : print_cell::h_center
4269 will default to width / 2.
4270 (print_merged_range) : Ditto.
4271 (print_cell_range) : Ditto.
4273 * src/sheet.c (sheet_adjust_preferences) : Update the menus to reflect
4274 changes in prefs. Take a flag to control redraw requests.
4275 (sheet_menu_state_enable_insert) : new function.
4277 * src/workbook-control-gui.c (wbcg_menu_state_enable_insert) : Merge
4278 all the insert col/row/cell menu updates into here.
4279 (wbcg_menu_state_sheet_prefs) : new function.
4280 (cb_sheet_pref_display_formulas) : reentrancy protection and use
4281 sheet_adjust_preferences.
4282 (cb_sheet_pref_hide_zeros) : ditto.
4283 (cb_sheet_pref_hide_grid_lines) : ditto.
4284 (cb_sheet_pref_hide_col_header) : ditto.
4285 (cb_sheet_pref_hide_row_header) : ditto.
4286 (workbook_control_gui_init) : add the new menu items.
4287 (workbook_control_gui_ctor_class) : reorg a bit.
4289 src/workbook-control.c : reorg a bit.
4291 2001-02-18 Jody Goldberg <jgoldberg@home.com>
4293 * configure.in : Make python plugin optional.
4295 2001-02-18 Jody Goldberg <jgoldberg@home.com>
4297 * src/workbook-control.c (wb_control_sheet_add) : update menus here.
4299 * src/print-cell.c (print_cell) : fix the display zero logic.
4300 * src/cell-draw.c (cell_draw) : ditto. And fix the comment.
4302 2001-02-18 Jody Goldberg <jgoldberg@home.com>
4304 * src/cell.c (cell_default_halign) : Handle alignment of numbers
4305 correctly when displaying formulas.
4307 * src/embeddable-grid.c (set_header_visibility) : start using our
4309 (Grid_set_header_visibility) : ditto.
4310 (embeddable_grid_set_header_visibility) : delete.
4312 * src/sheet-control-gui.c (scg_set_header_visibility) : delete.
4313 (scg_adjust_preferences) : Make this contingent on having a wbcg.
4315 * src/selection.c (sheet_selection_set_internal) : Use
4316 sheet_menu_state_enable_insert.
4317 (sheet_selection_reset) : ditto.
4319 2001-02-18 Almer S. Tigelaar <almer1@dds.nl>
4321 * src/sheet-private.h : Add flag for insert cells.
4323 * src/workbook-control-gui.c :
4324 (wbcg_insert_cells_enable) : New, enable/disable the Insert->Cells
4326 (workbook_control_gui_init) : Initialize the insert_cells menu
4328 (workbook_control_gui_ctor_class) : Initialize insert_cells
4331 * src/workbook-control-gui.h : Add menu_item_insert_cells.
4333 * src/workbook-control.c, src/workbook-control.h,
4334 src/workbook-control-priv.h : Export wbcg_insert_cell_enable to
4338 (sheet_selection_set_internal) : If the whole sheet is selected,
4339 disable Insert->Cells. Otherwise enable it.
4340 (sheet_selection_reset) : Enable Insert->Cells.
4342 * src/workbook-view.c
4343 (wb_view_menus_update) : Update Insert->Cells too.
4345 2001-02-17 Jody Goldberg <jgoldberg@home.com>
4347 * src/xml-io.c (xml_sheet_write) : Store some flags about the sheet.
4348 (xml_sheet_read) : Restore them.
4350 2001-02-17 Jody Goldberg <jgoldberg@home.com>
4352 * src/commands.c (cmd_clear_undo) : reset the selection to queue a
4355 * src/cell-draw.c (cell_draw) : take the coords of the center of the
4356 region directly, rather than the left offset.
4357 * src/print-cell.c (print_cell) : ditto.
4359 * src/preview-grid.c (preview_grid_draw) : change sematics of the
4360 centering arg to cell_draw.
4361 * src/item-grid.c (item_grid_draw) : ditto.
4362 (item_grid_draw_merged_range) : ditto. Fix drawing of selected cells.
4363 * src/print-cell.c (print_cell_range) : ditto.
4364 (print_merged_range) : ditto.
4366 2001-02-17 Jody Goldberg <jgoldberg@home.com>
4368 * src/clipboard.c (clipboard_paste_region) : Allow pasting just
4371 * src/print.c (print_page) : fix typo.
4373 * src/xml-io.c (xml_read_style) : Before version 1 and after version 6
4374 we stored full styles. Be sure the create a default style as a
4375 backward compatibility measure incase we add elements to styles in
4378 2001-02-17 Almer S. Tigelaar <almer1@dds.nl>
4381 (cmd_hide_colrow_correct_selection) : Make sure the
4382 hidden cols/rows are not selected. Selecting adjacent cols/rows
4383 instead. Fixes #38179.
4384 (cmd_hide_colrow_undo) : Call cmd_hide_colrow_correct_selectio here.
4385 (cmd_hide_colrow_redo) : And here.
4387 * src/colrow.h, src/colrow.c (colrow_find_adjacent_visible) :
4388 New, Find the next visible col/row in the sheet.
4390 2001-02-17 Jody Goldberg <jgoldberg@home.com>
4392 * src/style-border.c (style_borders_row_draw) : Don't draw the
4393 diagonals unless we are drawing the verticals.
4395 * src/sheet-control-gui.c (scg_scrollbar_config) : simplify a bit.
4397 2001-02-16 Jody Goldberg <jgoldberg@home.com>
4399 * src/dialogs/dialog-cell-format.c (fmt_dialog_init_align_page) :
4400 begin support for indenting.
4401 * src/workbook-format-toolbar.c : ditto.
4403 2001-02-16 Jody Goldberg <jgoldberg@home.com>
4405 * configure.in : post release version bump
4407 2001-02-15 Jody Goldberg <jgoldberg@home.com>
4409 * s/fit_in_cell/wrap_text/
4410 rename this in preparation for supporting shrink_to_fit
4412 2001-02-16 Jody Goldberg <jgoldberg@home.com>
4416 2001-02-16 Jody Goldberg <jgoldberg@home.com>
4418 * src/print.c (render_sheet_objects) : more constness.
4420 2001-02-16 Jody Goldberg <jgoldberg@home.com>
4422 * src/gnumeric.xml : remove the 'pack-end' from some of the format
4425 2001-02-16 Jody Goldberg <jgoldberg@home.com>
4427 * src/cell-draw.c (cell_draw) : fix some warnings.
4429 2001-02-15 Jody Goldberg <jgoldberg@home.com>
4431 * src/number-match.c (compute_value) : check for overflow.
4433 2001-02-15 Jody Goldberg <jgoldberg@home.com>
4435 * configure.in : remove dead dirs
4436 * Makefile.am : Add the xml-i18n-*.in files
4438 2001-02-15 Jody Goldberg <jgoldberg@home.com>
4440 * src/print.c (compute_sheet_pages) : Use even_if_only_styles.
4441 (print_page) : Ditto.
4442 (print_sheet) : Ditto.
4444 * src/xml-io.c (xml_write_print_info) : Support 'even_if_only_styles'
4445 (xml_read_print_info) : Ditto.
4446 * src/dialogs/dialog-printer-setup.c (do_fetch_page_info) : ditto.
4447 (do_setup_page_info) : Ditto.
4448 * src/print-info.c (print_info_copy) : ditto.
4449 (print_info_new) : ditto.
4450 (print_info_save) : ditto.
4452 2001-02-15 Jody Goldberg <jgoldberg@home.com>
4454 * src/cell-draw.c (cell_draw) : Support indents for left/right
4457 * src/cellspan.c (cell_calc_span) : Support indents when calculating
4460 * src/rendered-value.c (cell_rendered_offset) : new function
4462 2001-02-15 Almer S. Tigelaar <almer1@dds.nl>
4464 * preview-grid-controller.c
4465 (preview_grid_controller_new) : Properly initialize the
4467 (preview_grid_controller_free) : Remove rect and selection_rect
4470 * templates/autoformat/autoformat.General.advanced.xml : Correct
4473 2001-02-15 Jody Goldberg <jgoldberg@home.com>
4475 * src/mstyle.c (mstyle_visible_in_blank) : off by one error.
4476 * src/xml-io.c (xml_write_style_border) : Ditto.
4477 (xml_read_style_border) : ditto.
4479 * src/rendered-value.c (rendered_value_calc_size_ext) : calculate the
4482 * src/sheet-merge.c (sheet_merge_add) : redraw the entire region.
4484 2001-02-14 Jody Goldberg <jgoldberg@home.com>
4486 * src/style-border.c (style_border_draw) : delete.
4488 2001-02-14 Jody Goldberg <jgoldberg@home.com>
4490 * src/preview-grid.c (pg_style_get_row) : new function.
4491 (preview_grid_draw) : for use here.
4493 * src/sheet-style.c (style_row_init) : New routine spit out from.
4494 * src/item-grid.c (item_grid_draw) : here.
4495 * src/preview-grid.c (preview_grid_draw) : for use here.
4496 (preview_grid_draw_background) : there is no selection.
4498 2001-02-14 Jody Goldberg <jgoldberg@home.com>
4501 Do some renaming before the release
4503 2001-02-14 Almer S. Tigelaar <almer1@dds.nl>
4505 * configure.in: Small correction to libglade requirement.
4507 2001-02-14 Morten Welinder <terra@diku.dk>
4509 * src/plugin.c (plugin_info_list_read_for_dir): Prepare for xml2.
4510 (s/childs/xmlChildrenNode/).
4512 * src/xml-io-autoft.c (xml_read_format_template_members): Ditto.
4514 2001-02-14 Almer S. Tigelaar <almer1@dds.nl>
4516 * src/preview-grid.c
4517 (preview_grid_draw_border): Remove.
4518 (preview_grid_draw): Revamp excluding border drawing.
4520 2001-02-14 Jody Goldberg <jgoldberg@home.com>
4522 * configure.in : bump the libglade req to get some translation fixes.
4524 * gnumeric.spec.in : ditto.
4526 2001-02-14 Karl Eichwalder <ke@suse.de>
4528 * src/workbook-control-gui.c (cb_edit_search_replace_query):
4531 2001-02-13 Jody Goldberg <jgoldberg@home.com>
4533 * some header cleanup. Remove unused copies of
4536 2001-02-13 Morten Welinder <terra@diku.dk>
4538 * src/plugin.c (plugin_info_list_read_for_dir): Plug leak big
4539 enough to drive a truck through.
4540 (plugin_info_free): Plug leak.
4542 2001-02-13 Jody Goldberg <jgoldberg@home.com>
4544 * src/sheet.c (sheet_clone_styles) : rewrite for new style engine.
4545 (sheet_move_range) : remove warning.
4547 2001-02-13 Maciej Stachowiak <mjs@eazel.com>
4549 Changes to make gnumeric distcheck properly (mildly xml-i18n-tools
4552 * po/Makefile.in.in: Remove; this should not be in cvs, autogen
4553 will create it with gettextize and patch it with xml-i18n-tools.
4555 * src/dialogs/Makefile.am: Remove define of glade_msgs and remove
4556 it from EXTRA_DIST; these files are not in cvs any more, rather
4557 they are generated on demand by the xml-i18n-tools extraction
4558 code, so they should not (and cannot) go into the distribution
4561 2001-02-12 Karl Eichwalder <ke@suse.de>
4563 * templates/autoformat/Makefile.am (Category_files): Typo.
4565 2001-02-12 Jody Goldberg <jgoldberg@home.com>
4567 * src/cell-draw.c (cell_draw) : Center content on the cell with the
4568 content, not on the width of the span (think about asymetric column
4569 widths on the left and right.
4570 * src/print-cell.c (print_cell) : Ditto.
4572 * src/item-grid.c (item_grid_draw) : Pass the offset from the left
4573 edge to the cell with content.
4574 * src/print-cell.c (print_cell) : Ditto.
4576 2001-02-12 Jody Goldberg <jgoldberg@home.com>
4578 * src/cell-draw.c (cell_draw) : Fence post problem. Measure right
4579 margin as 'left + width - 1'
4580 * src/print-cell.c (print_cell) : ditto.
4582 2001-02-11 Jody Goldberg <jgoldberg@home.com>
4584 * src/item-grid.c (item_grid_draw) : pass the correct width.
4586 2001-02-11 Jody Goldberg <jgoldberg@home.com>
4588 * src/workbook-control-gui.c (wb_control_gui_focus_cur_sheet) :
4589 Improve the precondition.
4590 (cb_autosave) : ditto.
4591 (cb_notebook_switch_page) : Add some safety.
4593 2001-02-11 Karl Eichwalder <ke@suse.de>
4595 * src/main.c: s/behaviour/behavior/ and s/colours/colors/ .
4598 2001-02-11 Almer S. Tigelaar <almer1@dds.nl>
4600 * configure.in: Small correction for GAL.
4602 2001-02-11 Jody Goldberg <jgoldberg@home.com>
4604 * src/sheet.c (sheet_cell_set_text) : Queue a redraw before changing
4605 in case span shrinks after change.
4607 * src/sheet-merge.c (sheet_merge_add) : Clear spans
4609 2001-02-11 Jody Goldberg <jgoldberg@home.com>
4611 * README : bump GAL req.
4612 * gnumeric.spec.in : ditto.
4613 * configure.in : Ditto.
4615 2001-02-11 Jody Goldberg <jgoldberg@home.com>
4617 * src/parser.y : Move the state information into a struct so that we
4618 can eventually get rid of the statics.
4619 Take a 'ParseError' as a place to return more detailed information
4620 about parsing errors (Not used yet).
4622 2001-02-10 Jon K Hellan <hellan@acm.org>
4624 * src/print.c: Illustrate margin definitions.
4625 (print_headers): Header, not top margin, should be top of header
4627 (print_footers): Footer, not bottom margin, should be top of
4630 * src/xml-io.c (xml_print_info_fix_margins): New function fix up
4631 incorrectly stored margins.
4632 (xml_read_print_margins): Use it.
4634 2001-02-10 Jody Goldberg <jgoldberg@home.com>
4636 * src/workbook-control-gui.c (insert_bonobo_object) : help
4639 * src/sheet-style.c (foreach_tile) : Only apply to applicable row or
4642 2001-02-09 Jeffrey Stedfast <fejj@ximian.com>
4644 * src/print.c: include ranges.h
4646 * src/expr.c: include gutils.h
4648 2001-02-08 Jody Goldberg <jgoldberg@home.com>
4650 * src/gnumeric.xml : Remove the ugly alight right
4652 * src/style-border.c (style_borders_row_draw) : Do a quick
4653 implementation of diagonals.
4655 2001-02-08 Jon K Hellan <hellan@acm.org>
4657 * src/embeddable-grid.[ch]: Adapt to more Bonobo changes.
4659 * src/embeddable-grid.h (struct EmbeddableGridClass): Add
4660 POA_GNOME_Gnumeric_Grid__epv.
4662 * src/embeddable-grid.c: Remove
4663 embeddable_grid_(v)?epv.
4664 (embeddable_grid_class_init): New version.
4665 (init_embeddable_grid_corba_class, create_embeddable_grid):
4667 (embeddable_grid_new(_anon)?): Remove CORBA stuff.
4668 (embeddable_grid_get_type, grid_view_get_type): Use
4669 bonobo_x_type_unique.
4670 (grid_view_get_type):
4672 2001-02-08 Almer S. Tigelaar <almer1@dds.nl>
4674 * src/style-border.h, src/style-border.c (style_borders_row_draw):
4675 Adjust so it uses a vector of ints for column widths instead of
4676 reading them out of the Sheet directly.
4678 * src/item-grid.c (item_grid_draw): Built a column width
4679 vector and pass it to the style_borders_row_draw routine.
4681 2001-02-08 Morten Welinder <terra@diku.dk>
4683 * src/file-autoft.c (category_group_list_get): Plug leak.
4684 (category_group_free): Plug grave leak.
4686 2001-02-07 Morten Welinder <terra@diku.dk>
4688 * src/commands.c (cmd_search_replace_do_cell): Improve quoting
4689 using gnumeric_strescape.
4691 * src/gutils.c (gnumeric_strescape): Imported from src/expr.c.
4692 Constified and changed to add the quotes.
4694 * src/expr.c (strescape): Moved to gutils.
4695 (do_expr_tree_to_string): Use gnumeric_strescape.
4697 2001-02-07 Jon K Hellan <hellan@acm.org>
4699 * src/print.c (print_hf_line): Check if there is room to print a
4702 2001-02-07 Jody Goldberg <jgoldberg@home.com>
4704 * src/sheet-style.c (border_mask_vec) : fix the problem where
4705 artificial conflicts were created when comparing cells without
4706 borders to cells with backgrounds and no borders. the backgrounds
4707 were causing the borders to be NULL which would toggle a conflict.
4709 2001-02-06 Jody Goldberg <jgoldberg@home.com>
4711 * src/print.c (print_page) : Print areas with visible styles too.
4713 * src/sheet-style.c (sheet_style_has_visible_content) : new function
4715 2001-02-06 Jody Goldberg <jgoldberg@home.com>
4717 * src/style-border.c (style_borders_row_print) : Use print_hline
4718 print_vline to simplify things later.
4720 * src/print.c (print_page) : typo.
4722 * src/sheet.c (sheet_col_set_default_size_pts) : Add some safety.
4723 (sheet_row_set_default_size_pts) : Add some safety.
4725 2001-02-06 Jody Goldberg <jgoldberg@home.com>
4727 * src/print.c (print_page) : Add a simple filter to avoid printing
4728 pages with no content. Currently uses only cells. No tests for
4729 visible styles on blank cells.
4731 * src/cellspan.c (cell_calc_span) : improve const.
4733 2001-02-06 Jody Goldberg <jgoldberg@home.com>
4735 * src/style-border.c (style_border_data) : DO NOT use width 0 lines
4736 with dashes. Strange offset problems happen when you do partial
4739 2001-02-06 Morten Welinder <terra@diku.dk>
4741 * src/workbook-private.c (workbook_private_new): Fix prototype.
4743 * src/commands.c (cmd_search_replace_destroy): Plug leak.
4744 (cmd_search_replace_do_cell): Implement string and error failure
4745 modes (apart from a FIXME in the code).
4747 2001-02-06 Jon K Hellan <hellan@acm.org>
4749 * configure.in, README: Depend on bonobo >= 0.35.
4751 2001-02-06 Almer S. Tigelaar <almer1@dds.nl>
4753 * src/gui-clipboard.c (x_selection_to_cell_region):
4754 Use mstyle_new_default instead of mstyle_new.
4756 * src/preview-grid-controller.c (preview_grid_controller_new):
4757 No need to make a copy of the default mstyle.
4759 * src/format-template.c (format_template_set_style):
4760 Make sure the passed mstyle gets all it's elements set.
4762 2001-02-06 Jody Goldberg <jgoldberg@home.com>
4764 * src/style-border.c (style_borders_row_draw) : init x.
4765 (style_borders_row_print) : init x.
4767 * src/print-cell.c (print_cell_range) : typo.
4769 2001-02-06 Almer S. Tigelaar <almer1@dds.nl>
4771 * src/gui-clipboard.c (x_selection_to_cell_region):
4772 Don't invoke the STF druid when pasting a single line. Fixes #21507.
4774 2001-02-06 Jon K Hellan <hellan@acm.org>
4776 * src/embeddable-grid.c (grid_view_new): Adapt to changes in bonobo.
4778 2001-02-05 Jody Goldberg <jgoldberg@home.com>
4780 * src/sheet-style.c (sheet_style_get_extent) : this should search the
4781 entire sheet, not just decrease the extent passed in.
4783 * src/style-border.c (style_borders_row_draw) : new function.
4785 * src/print-cell.c (print_cell_grid) : delete.
4786 (print_cell_range) : sync with itemgrid.
4787 (print_merged_range) : ditto.
4788 (print_cell_background) : ditto.
4790 2001-02-05 Jody Goldberg <jgoldberg@home.com>
4792 * src/item-grid.c (item_grid_draw) : Off by one.
4793 (item_grid_draw_merged_range) : some simple optimization. No need to
4794 calc the coords for the entire cell unless we are painting the
4797 2001-02-05 Jody Goldberg <jgoldberg@home.com>
4799 * src/style-border.c (style_borders_row_draw) : check for NULL even on
4802 2001-02-05 Jody Goldberg <jgoldberg@home.com>
4804 * src/style-border.c (style_border_hmargins) : built from the original
4805 (style_border_vmargins) : draw routines.
4806 (style_borders_row_draw) : a wrapper to draw a set of borders.
4808 2001-02-04 Jody Goldberg <jgoldberg@home.com>
4810 * src/sheet-style.c (style_row) : Handle the display of gridlines
4813 * src/item-grid.c (item_grid_draw_merged_range) : prepare to do
4814 borders & grids in a batch as part of the standard render process.
4815 (item_grid_draw) : Ditto.
4817 2001-02-04 Jody Goldberg <jgoldberg@home.com>
4819 * src/preview-grid.c (preview_grid_realize) : no need for
4821 * src/item-grid.c (item_grid_realize) : ditto.
4823 2001-02-03 Jody Goldberg <jgoldberg@home.com>
4825 * src/xml-io.c (xml_workbook_read) : bump xml version to 6.
4826 (xml_read_style_region) : V6 uses set_range rather than the older
4827 apply_range. We now save/restore fully qualified styles.
4829 2001-02-03 Jody Goldberg <jgoldberg@home.com>
4831 * src/sheet-object.c (sheet_objects_max_extent) : new routine.
4832 (sheet_object_destroy) : regen extent if necessary.
4834 * src/sheet-control-gui.c (scg_scrollbar_config) : Honour the object
4837 * src/gui-file.c (gui_file_import) : A successful import must have at
4840 * src/file.c (do_load_from) : Check that a successful read actually
4843 * src/gui-clipboard.c (x_selection_to_cell_region) : Init
4845 * src/stf-parse.c (stf_parse_region) : Ditto.
4846 * src/xml-io.c (xml_read_selection_clipboard) : Ditto.
4848 * src/sheet-control-gui.c (scg_object_move) : split out from the
4849 control point motion handler.
4850 (cb_control_point_event) : Use it here.
4851 (cb_slide_handler) : and here.
4853 2001-02-01 Jody Goldberg <jgoldberg@home.com>
4855 * src/item-grid.c (item_grid_draw) : Last couple of intersection
4856 cases. We now draw correctly for the simple cases. Grid lines are
4857 handled incorrectly. The error won't show up when drawing, but it
4858 will when we do this for printing. We should also be more careful
4859 with the intersection cases for borders. double check using borders
4860 of different colours.
4862 2001-02-01 Jody Goldberg <jgoldberg@home.com>
4864 * src/item-grid.c (cb_obj_create_button_release) : Use the new default
4867 * src/sheet-object-impl.h : Add default_{width, height} to class.
4869 * src/sheet-control-gui.c (scg_object_update_bbox) : when we select a
4870 new object get its position.
4871 (cb_control_point_event) : This is a motion event. Get rid of the
4874 * src/sheet-merge.c (sheet_merge_remove) : free the range AFTER we
4875 lookup the cell. It is possible that the range is the same as the
4876 argument and we still need it.
4878 * src/item-grid.c (item_grid_draw) : Init the extra horizontals
4879 in the next two rows.
4881 2001-02-01 Jody Goldberg <jgoldberg@home.com>
4883 * src/sheet.c (sheet_get_extent) : don't call style_extent. The
4884 caller can do that if desired.
4886 * src/item-grid.c (item_grid_draw) : Use the new drawing code.
4888 * src/style-border.c (style_border_fetch) : init 'width'
4889 (style_border_set_gc_dash) : Use 'CAP_NOT_LAST' to get consistent
4890 behavior with width 0 and width > 0 lines.
4891 (style_border_hdraw) : implement.
4892 (style_border_vdraw) : implement.
4894 2001-01-31 Morten Welinder <terra@diku.dk>
4896 * src/commands.c (cmd_search_replace): Revert previous interface
4897 change (and use a callback instead). Commands should not know
4898 about user interfaces.
4900 * src/workbook-control-gui.c (wbcg_paste_special_enable): Fix
4901 Bonobo case, I hope.
4902 (cb_edit_search_replace_query): New function.
4903 (cb_edit_search_replace): Connect cb_edit_search_replace_query.
4905 * src/item-grid.c (item_grid_draw): Kill a few (real) warnings.
4907 2001-01-31 Almer S. Tigelaar <almer1@dds.nl>
4910 Remove all menu item state flags.
4912 * src/sheet-private.h:
4913 Put the menu item state flags here.
4915 * src/workbook-control-gui.c:
4916 (wbcg_paste_special_enable): Remove the second argument to
4917 this function. Instead read this directly out of the flags. Add sheet
4919 (wbcg_insert_cols_rows_enable): Ditto for the 3rd argument and
4920 also remove the cols arguments so that one call will update both
4921 row and column menu items. Also add sheet argument.
4923 * src/workbook-control.c, src/workbook-control.h,
4924 src/workbook-control-priv.h:
4925 Adjust arguments to wbcg_paste_special_enable and insert_cols_rows.
4927 * src/application.c:
4928 (application_clipboard_copy): First set the paste special flag
4929 and don't pass argument to paste_special_enable.
4930 (application_clipboard_cut): Ditto.
4931 (application_clipboard_clear): Ditto.
4933 * src/workbook-view.c:
4934 (wb_view_menus_update): Update to don't pass flags as argument,
4935 don't do separate calls for cols and rows and optimize to do all
4939 (sheet_selection_set_internal): Disable or enable insert cols/rows,
4940 update UI only when necessary and rename label for clarity.
4941 (sheet_selection_reset): Enable insert cols/rows flags.
4943 2001-01-31 Morten Welinder <terra@diku.dk>
4945 * src/search.c (search_replace_verify): For regexps, validate the
4947 (search_replace_compile): Detect whether replacement text is
4948 literal (modulo case of letters).
4950 * src/commands.c (cmd_search_replace): Take a wbcg so we can pop
4952 (cmd_search_replace_do_cell): Implement "Fail" error mode.
4954 2001-01-30 Jody Goldberg <jgoldberg@home.com>
4956 * src/preview-grid-controller.c (preview_grid_controller_force_redraw)
4957 work around overflow on BSD.
4958 * src/item-bar.c (item_bar_event) : ditto.
4960 2001-01-30 Jody Goldberg <jgoldberg@home.com>
4962 * src/xml-io.c (xml_sheet_create) : typo.
4964 2001-01-30 Jody Goldberg <jgoldberg@home.com>
4966 s/float_t/gnum_float/
4969 * src/sheet-style.c (sheet_style_get_uniform) : implement.
4971 * src/parse-util.c (parse_text_value_or_expr) : dont lose the entered
4974 * src/history.c (history_menu_insert_separator) : keep case
4976 * src/workbook-control-gui.c (workbook_menu_file) : ditto.
4978 * configure.in : update GAL req.
4980 * gnumeric.spec.in : ditto.
4982 2001-01-29 Jody Goldberg <jgoldberg@home.com>
4984 * src/sheet-style.h : decl for StyleRow.
4986 * src/xml-io.c : Use the Child and Root aliases to ease ease
4987 transition from xml1 -> xml2.
4988 (xml_sheet_create) : default name for sheets that fail to specify one.
4990 * src/workbook.c (workbook_sheet_by_index) : improve safety.
4992 2001-01-30 Michael Meeks <michael@helixcode.com>
4994 * src/sheet-object-bonobo.c (sheet_object_bonobo_set_server):
4995 add a ref to the server, we seem to have lost one somewhere.
4997 2001-01-30 Almer S. Tigelaar <almer1@dds.nl>
4999 * src/selection.c, src/selection.h:
5000 (sheet_selection_reset_only): Rename to sheet_selection_reset.
5002 * src/cmd-edit.c: s/sheet_selection_reset_only/sheet_selection_reset.
5003 * src/commands.c: Ditto.
5004 * src/gnumeric-sheet.c: Ditto.
5005 * src/item-grid.c: Ditto.
5006 * src/sheet.c: Ditto.
5007 * src/sheet-control-gui.c: Ditto.
5008 * src/xml-io.c: Ditto.
5010 2001-01-29 Almer S. Tigelaar <almer1@dds.nl>
5012 * src/sheet.h: Add flags for insert cols/rows and paste special.
5015 (sheet_selection_add_range):
5016 Remove the settings of insert cols/rows here.
5017 (sheet_selection_set_internal):
5018 Set insert cols/rows menu items and flags correctly.
5019 (sheet_selection_reset_only): Reset insert cols/rows flags.
5022 (application_clipboard_clear): Set enable paste special flag.
5023 (application_clipboard_copy): Ditto.
5024 (application_clipboard_cut): Ditto.
5026 * src/workbook-view.c, src/workbook-view.h
5027 (wb_view_menus_update): New function, updates the
5028 insert cols/rows and paste special menu items.
5029 (wb_view_sheet_focus): Call menus_update here.
5030 (wb_view_sheet_add): Ditto.
5032 * src/workbook-control-gui.c
5033 (workbook_control_gui_init): Update menu items here.
5035 2001-01-29 Fatih Demir <kabalak@gmx.net>
5037 * .cvsignore: Added the xml-i18n-* files and the intl
5038 subdir to the ignores.
5040 2001-01-28 Zbigniew Chyla <cyba@gnome.pl>
5042 * src/plugin.c, src/xml-io-autoft.c:
5043 s/xml_search_child/e_xml_get_child_by_name/
5044 s/xml_search_child_lang_list/e_xml_get_child_by_name_by_lang_list/
5047 Removed function: xml_search_child.
5048 Functions moved to GAL:
5049 xml_search_child_lang_list_with_score,
5050 xml_search_child_lang_list,
5051 xml_search_child_no_lang.
5052 Use e_xml_get_child_by_name instead of xml_search_child everywhere.
5054 2001-01-27 Zbigniew Chyla <cyba@gnome.pl>
5056 Making Gnumeric -Werror friendly (well, almost).
5058 * plugins/excel/ms-chart.c: Added "#if 0/#endif" around declarations
5059 of unused variables.
5061 * plugins/gda/plugin-gda.c (display_recordset): Removed unused
5062 variable, fixed some errors (that's why I use -Werror).
5064 * plugins/xml2/xml2.c (init_plugin): Used xml2_probe function.
5066 * src/search.c: Included "ranges.h".
5068 * src/style.c: Included "sheet.h"
5070 2001-01-27 Zbigniew Chyla <cyba@gnome.pl>
5072 * src/dialogs/plugin-manager.glade: Set policy to AUTOMATIC for some
5075 2001-01-26 Zbigniew Chyla <cyba@gnome.pl>
5077 * src/gnumeric-sheet.c (gnumeric_sheet_filenames_dropped): Added
5078 missing file_finish_load(). Displaying error dialog in non-bonobo
5079 version if file has unknown format.
5081 2001-01-26 Jon K Hellan <hellan@acm.org>
5083 * src/sheet-control-gui.[ch] (scg_rangesel_cursor_extend,
5084 scg_take_focus): new functions to wrap direct calls to gsheet.
5086 * src/sheet-control-gui.c (sheet_view_destroy): Yield focus if we
5089 * src/workbook-control-gui.c (wb_control_gui_focus_cur_sheet): Use
5090 scg_take_focus instead of gtk_window_set_focus.
5091 (yield_focus): Remove. sheet_view_destroy now takes care of this.
5092 (wbcg_sheet_add): Do not attach yield_focus.
5094 * src/item-grid.c (cb_extend_expr_range): Use
5095 scg_rangesel_cursor_extend instead of gnumeric_sheet version.
5097 2001-01-26 Michael Meeks <michael@helixcode.com>
5099 * src/plugin.c (plugin_info_read): g_new0 the PluginInfo so the
5100 umpteen function pointers are NULL'd.
5102 2001-01-25 Almer S. Tigelaar <almer1@dds.nl>
5104 * src/workbook-control-priv.h: Remove insert struct, there
5105 is only one function in it anyway so no need for a struct.
5107 * src/workbook-control.c: Adjust for removal of the insert struct.
5109 * src/workbook-control-gui.c
5110 (wbcg_paste_special_enable): Use change_menu_sensitivity.
5111 (workbook_control_gui_ctor_class): Adjust for removal of the
5114 2001-01-25 Morten Welinder <terra@diku.dk>
5116 * src/commands.c (cmd_search_replace_update_after_action): Delete
5118 (enum SearchReplaceItemType): retire SRI_expr.
5120 * src/parser.y (parse_ref_or_string): Constify.
5121 (gnumeric_parse_error): Fix prototype.
5122 (STRING '(' arg_list ')'): plug leak and use proper error
5125 2001-01-25 Zbigniew Chyla <cyba@gnome.pl>
5127 * plugins/applix/boot.c plugins/dif/dif.c plugins/excel/boot.c
5128 plugins/gb/plugin.c plugins/gda/plugin-gda.c plugins/guile/plugin.c
5129 plugins/html/boot.c plugins/html/boot.h plugins/html/html.c
5130 plugins/html/html.h plugins/html/latex.c plugins/html/latex.h
5131 plugins/html/roff.c plugins/html/roff.h plugins/lotus-123/boot.c
5132 plugins/numtheory/numtheory.c plugins/oleo/boot.c
5133 plugins/plan-perfect/pln.c plugins/python/python.c plugins/sc/sc.c
5134 plugins/sylk/sylk.c plugins/xbase/boot.c plugins/xml2/xml2.c:
5135 Defined gnumeric_plugin_version variable containing Gnumeric version
5136 string for every plugin.
5137 Added user_data parameter to "probe", "open" and "save" functions.
5138 Changed PluginData to PluginInfo.
5139 Modified can_deactivate_plugin, cleanup_plugin and init_plugin
5140 functions to match new prototypes in plugin.h.
5141 Storing registered opener_id/saver_id in variables and using them
5142 while unregistering.
5144 * plugins/applix/Makefile.am plugins/dif/Makefile.am
5145 plugins/gda/Makefile.am plugins/html/Makefile.am
5146 plugins/lotus-123/Makefile.am plugins/numtheory/Makefile.am
5147 plugins/oleo/Makefile.am plugins/plan-perfect/Makefile.am
5148 plugins/sc/Makefile.am plugins/sylk/Makefile.am
5149 plugins/xbase/Makefile.am plugins/xml2/Makefile.am:
5150 Installing every plugin in separate directory, together with plugin
5151 descriptions (plugin.xml files).
5153 * plugins/applix/plugin.xml, plugins/dif/plugin.xml,
5154 plugins/gda/plugin.xml, plugins/html/plugin.xml,
5155 plugins/lotus-123/plugin.xml, plugins/numtheory/plugin.xml,
5156 plugins/oleo/plugin.xml, plugins/plan-perfect/plugin.xml,
5157 plugins/python/plugin.xml, plugins/sc/plugin.xml,
5158 plugins/sylk/plugin.xml, plugins/xbase/plugin.xml,
5159 plugins/xml2/plugin.xml:
5160 New files - plugin descriptions in XML files.
5162 2001-01-25 Zbigniew Chyla <cyba@gnome.pl>
5164 * src/Makefile.am (GNUMERIC_BASE_SOURCES): Added error-info.[ch]
5166 * error-info.[ch]: New files.
5168 * src/plugin.[ch]: New plugin engine.
5170 * src/dialogs/dialog-plugin-manager.c,
5171 src/dialogs/plugin-manager.glade,
5172 src/dialogs/plugin-manager.glade.h:
5175 * src/main.c (gnumeric_main): Call plugins_shutdown() on shutdown.
5178 (gnumeric_bonobo_write_workbook, gnumeric_bonobo_read_workbook,
5179 gnumeric_bonobo_io_probe): Added "user_data" arg.
5180 (gnumeric_bonobo_io_init): Saving saver/opener id.
5182 * src/file-autoft.c (gnumeric_extra_autoformat_dirs): Used
5183 gnumeric_config_get_string_list function.
5186 (file_format_register_open, file_format_register_save): Added
5187 user_data parameter, return FileOpenerId/FileSaverId.
5188 (file_format_unregister_open, file_format_unregister_save): Take
5189 only FileOpenerId/FileSaverId as parameter.
5190 (get_file_saver_by_id, get_file_opener_by_id): New functions.
5191 (do_load_from): Pass user_data parameter to "probe" and "open"
5193 (workbook_save_as, workbook_save): Pass user_data parameter to "save"
5197 (FileFormatProbe, FileFormatOpen, FileFormatSave): Adder user_data
5199 (struct _FileOpener, struct _FileSaver): Added opener_id/saver_id
5201 (file_format_register_open, file_format_register_save):
5202 Added user_data parameter, return FileOpenerId/FileSaverId.
5203 (file_format_unregister_open, file_format_unregister_save):
5204 Take only FileOpenerId/FileSaverId as parameter.
5206 * src/gnumeric-util.[ch]
5207 (gnumeric_error_info_dialog_show, static ctree_insert_error_info):
5208 New functions displaying dialog with ErrorInfo contents.
5210 * src/gui-file.c (gui_file_import): Pass user_data parameter to
5214 New functions: gnumeric_config_get_string_list,
5215 gnumeric_config_set_string_list, g_string_list_copy,
5217 (g_create_list): Added missing va_end().
5219 * src/stf.c (stf_read_workbook, stf_write_workbook): Added user_data
5222 * src/workbook.[ch] (workbook_set_saveinfo): Now takes file_saver_id
5226 (xml_probe, gnumeric_xml_read_workbook, gnumeric_xml_write_workbook):
5227 Added user_data parameter.
5228 (xml_init): Store xml_opener_id and xml_saver_id.
5229 (gnumeric_xml_get_opener_id, gnumeric_xml_get_saver_id): New
5232 2001-01-25 Almer S. Tigelaar <almer1@dds.nl>
5234 * src/clipboard.h : Add PASTE_UPDATE_ROW_HEIGHT as a new paste flag.
5237 (cmd_paste_copy_undo): Add PASTE_UPDATE_ROW_HEIGHT to the paste flags.
5238 (cmd_paste_cut_redo): Update the row heights of the target region after
5239 pasting for consistency with the behaviour of copy.
5240 (cmd_paste_cut): Show source cut range in undo descriptor.
5242 * src/clipboard.c (clipboard_paste_region): Update row height after
5243 pasting if PASTE_UPDATE_ROW_HEIGHT flag is given.
5245 2001-01-25 Jody Goldberg <jgoldberg@home.com>
5247 * src/cmd-edit.c (cmd_paste_to_selection) : allow merged regions
5249 * src/clipboard.c (clipboard_paste_region) : Optionally paste merged
5252 * src/style-border.c (style_border_fetch) : add margins.
5254 2001-01-24 Morten Welinder <terra@diku.dk>
5256 * src/commands.c (cmd_search_replace_update_after_action): New
5258 (cmd_search_replace_undo, cmd_search_replace_redo,
5259 cmd_search_replace_do): Call
5260 cmd_search_replace_update_after_action.
5261 (cmd_search_replace_do_cell): Change to work on entered text which
5262 is, we believe, what XL does.
5264 2001-01-24 Jody Goldberg <jgoldberg@home.com>
5266 * src/sheet-style.c (sheet_style_get_uniform) : disable stupid cruft
5267 until I actually write this function.
5269 * src/format-template.c (format_template_recalc_hash) : remove the
5270 cruft to apply shifted borders.
5272 * src/gnumeric.xml : Define font Underline/Italic as toggles.
5274 2001-01-24 Jody Goldberg <jgoldberg@home.com>
5276 * src/clipboard.c (clipboard_copy_range) : save the merged regions.
5277 (clipboard_release) : cleanup merged regions.
5279 * src/commands.c (cmd_merge_cells_redo) : move the non-corner content
5281 * src/sheet-merge.c (sheet_merge_add) : to here. Apply the style from
5282 the corner to the entire region.
5284 * src/sheet.c (sheet_range_set_text) : clear range_filled merged
5287 * src/item-grid.c (item_grid_draw) : borders & grids for merged cells.
5289 2001-01-23 Jody Goldberg <jgoldberg@home.com>
5291 * src/sheet-style.c (style_row) : move the clearing of grid lines
5292 * src/item-grid.c (item_grid_draw) : from here.
5294 2001-01-24 Almer S. Tigelaar <almer1@dds.nl>
5296 * src/gnumeric-util.c (gnumeric_create_popup_menu):
5297 Let the sensitivity filter function exacly like the
5300 * src/sheet-control-gui.c (scg_context_menu):
5301 Disable insert rows/cols according to the selected
5302 rows/cols. We don't want people to insert anything if
5303 the whole sheet is selected or if there are multiple
5304 selections of whole rows and cols.
5306 * src/workbook-control-gui.c (wbcg_insert_cols_rows_enable):
5307 Fix typo, "Cols" should be "Columns".
5309 2001-01-24 Almer S. Tigelaar <almer1@dds.nl>
5311 * src/clipboard.c (clipboard_paste_region):
5312 Update row heights after pasting a region.
5314 2001-01-23 Morten Welinder <terra@diku.dk>
5316 * src/commands.c (cmd_search_replace_do): Implement
5317 search-and-replace in range.
5319 * src/search.c (calculate_replacement): New function. Implements
5322 2001-01-23 Jody Goldberg <jgoldberg@home.com>
5324 * src/sheet-control-gui.c (scg_colrow_select) : If we are not
5325 selecting a range for an expression then we should cancel editing.
5326 (scg_context_menu) : cancel editing.
5328 2001-01-22 Jody Goldberg <jgoldberg@home.com>
5330 * src/sheet.c : Use the new wrapper function in scg (for now) rather
5331 than a direct call to gsheet.
5333 * src/sheet-control-gui.c (scg_set_cursor_bounds) : new function to
5334 wrap direct calls to gsheet. This is prep for supporting panes.
5335 (scg_compute_visible_region) : new function
5336 (scg_make_cell_visible) : new function
5337 (scg_create_editor) : new function
5338 (scg_stop_editing) : new function
5339 (scg_stop_cell_selection) : new function
5341 * src/pattern.c (gnumeric_background_set_gc) : no need for setting GC
5342 in non selection case.
5344 * src/gnumeric-sheet.c (gnumeric_sheet_create_editor) : renamed from
5345 gnumeric_sheet_create_editing_cursor.
5346 (gsheet_compute_visible_region) : rename from
5347 gnumeric_sheet_compute_visible_ranges
5349 2001-01-22 Morten Welinder <terra@diku.dk>
5351 * src/search.c (match_is_word): I got this right-end condition
5354 * src/cell.c (cell_has_comment): Resurrect.
5356 * src/commands.c (cmd_search_replace_do_cell): No need for the
5358 (command_push_undo): Remove duplicate call to update_after_action.
5359 First check parameters, then use them.
5360 (command_register_undo): New function, split from
5362 (command_push_undo): Use command_register_undo.
5363 (truncate_undo_info): Change to take a Workbook directly. Caller
5365 (cmd_search_replace): Use command_register_undo and eliminate
5368 2001-01-22 Morten Welinder <terra@diku.dk>
5370 * src/search.c (search_replace_verify): When relevant, check that
5371 the range text is not empty. Implement searching for whole words.
5373 * src/application.c (application_dpi_to_pixels): Fix prototype.
5374 (application_history_update_list): Constify.
5375 (application_display_dpi_get, application_display_dpi_set): Change
5376 to using doubles, not floats.
5378 * src/commands.c (cmd_search_replace_redo): hack: don't do
5379 anything the first time around.
5380 (cmd_search_replace_do_cell): Partially implement.
5381 (cb_search_replace_collect): New function.
5382 (cb_order_sheet_row_col): New function.
5383 (cmd_search_replace_do): Partially implement.
5385 * src/workbook-control-gui.c (cb_edit_search_replace): Activate
5388 2001-01-22 Almer S. Tigelaar <almer1@dds.nl>
5392 * src/workbook-control-gui.c, src/workbook-control-gui-priv.h:
5393 (wbcg_insert_cols_rows_enable): New, handles enabling/disabling
5394 of insert cols/rows menu items.
5395 (change_menu_sensitivity): New, for settings the sensitivity
5397 (workbook_control_gui_ctor_class): Add insert_cols_rows.enable
5400 * src/workbook-control.c, src/workbook-control.h: Add
5401 insert_cols_rows_enable as a virtual function.
5403 * src/workbook-control-priv.h: Add struct for insert_cols_rows
5407 (sheet_selection_add_range): After adding a range, find out if
5408 any range specifies either a whole row or whole col selection
5409 and disable insert rows/cols accordingly.
5410 (sheet_selection_reset_only): Re-enable insert rows/cols here.
5412 2001-01-18 Morten Welinder <terra@diku.dk>
5414 * src/search.c (search_replace_verify, search_replace_string): New
5417 * src/commands (cmd_search_replace_do_cell): new function.
5419 2001-01-22 Almer S. Tigelaar <almer1@dds.nl>
5421 * src/commands.c (update_after_action):
5422 Make the sheet that was subject to an undo/redo operation
5423 the active sheet after the operation has succeeded. Fixes #38208.
5425 2001-01-21 Almer S. Tigelaar <almer1@dds.nl>
5427 * src/sheet-autofill.c (autofill_cell): Use sheet_cell_set_value
5428 instead of sheet_cell_set_text. Fixes bug #38175.
5430 2001-01-17 Morten Welinder <terra@diku.dk>
5432 * src/commands.c (cmd_search_replace_undo,
5433 cmd_search_replace_redo, cmd_search_replace_do,
5434 cmd_search_replace, cmd_search_replace_destroy): New functions,
5437 2001-01-16 Morten Welinder <terra@diku.dk>
5439 * src/item-grid.c (item_grid_draw): UMR fixes from jody.
5441 2001-01-16 Jody Goldberg <jgoldberg@home.com>
5443 * src/sheet-style.c (sheet_style_get_uniform) : don't leak border ref.
5445 * src/workbook.c (workbook_sheet_delete) : disable the undo/redo
5446 combos when we clear the undo stack.
5448 2001-01-14 Jody Goldberg <jgoldberg@home.com>
5450 * src/sheet-style.c (style_row) : don't apply none to a cleared
5453 * src/sheet-style.h (StyleRow) : const.
5455 * src/mstyle.c (mstyle_get_color) : const.
5457 * src/pattern.c (gnumeric_background_set_gc) : remove duplicate
5460 2001-01-13 Jody Goldberg <jgoldberg@home.com>
5462 * src/item-grid.c (item_grid_draw) : rewrite.
5464 * src/sheet-control-gui.c (sheet_view_redraw_cell_region) : make the
5467 * src/commands.c (cmd_format) : if there are no borders there is no
5468 need to save the surroundings.
5470 * src/selection.c (selection_contains_colrow) : const
5472 * src/sheet-style.c (get_style_row) : Fix stupidity.
5473 (style_row) : ditto.
5475 2001-01-12 Jody Goldberg <jgoldberg@home.com>
5477 * src/cell-draw.c (cell_draw) : const.
5479 * src/pattern.c (gnumeric_background_set_gc) : const.
5480 (gnumeric_background_set_pc) : const.
5482 * src/sheet-control-gui.c (sheet_view_selection_ant) : No more 'grid'
5485 * src/item-grid.c : privatize the structure in preparation for panes.
5487 * src/item-edit.c (entry_create_feedback_range) : no more grid
5488 argument. Use scg instead.
5489 (item_edit_set_arg) : ditto.
5491 * src/item-cursor.c (item_cursor_set_arg) : delete the GRID argument
5494 * src/gnumeric-sheet.c (start_cell_selection_at) : Avoid casting the
5495 result of a function call. Remove setting 'Grid' deleted argument.
5496 (gnumeric_sheet_new) : No more Grid argument.
5498 * src/preview-grid.c (preview_grid_draw_border) : moved here from
5501 2001-01-16 Jody Goldberg <jgoldberg@home.com>
5503 * configure.in : Switch to AM_GNOME_GETTEXT and remove the
5504 AC_LINK_FILES line so that things configure and compile again.
5506 2001-01-12 Morten Welinder <terra@diku.dk>
5508 * src/history.c (file_history_cmd) [ENABLE_BONOBO]: Plug leak.
5510 2001-01-12 Jody Goldberg <jgoldberg@home.com>
5512 * src/sheet-style.c (cb_style_extent) : new function.
5513 (sheet_style_get_extent) : quick easy implementation.
5515 2001-01-11 Jody Goldberg <jgoldberg@home.com>
5517 * src/sheet-style.c (sheet_style_get_extent) : implement.
5518 (cb_style_extent) : implement.
5520 2001-01-11 Jody Goldberg <jgoldberg@home.com>
5522 * src/mstyle.c (mstyle_ref_multiple) : new function.
5523 (mstyle_copy_merge) : new function.
5524 (mstyle_new_default) : Do not cache the result. That is done at the
5526 (mstyle_do_merge) : delete.
5527 (mstyle_get_format) : constness.
5529 * src/format-template.c (cb_format_sheet_border) : delete.
5530 (format_template_apply_to_sheet_regions) : borders are no longer
5533 * src/expr.c (expr_tree_array_formula_corner) : do not store the
5535 (expr_tree_new_array) : ditto.
5536 (do_expr_tree_unref) : ditto.
5538 * src/cell.c (cell_relocate) : Arrays are simplified. No need to keep
5539 a pointer to the corner. It made the system too brittle.
5540 (cell_set_mstyle) : delete.
5542 * src/Makefile.am : remove test.[ch]
5544 * src/gnumeric-sheet.c (gnumeric_sheet_find_{col,row}) : There is no
5547 2001-01-09 Jody Goldberg <jgoldberg@home.com>
5549 * src/mstyle.h : Change order of borders to match BorderLocation
5551 2001-01-08 Jody Goldberg <jgoldberg@home.com>
5553 * src/ranges.c (range_has_header) : avoid leaking styles.
5555 * src/cell.c (cell_get_mstyle) : Use sheet_style_get, and do not bump
5557 (cell_render_value) : Adjust.
5558 (cell_get_format : Adjust.
5559 (cell_set_text) : Adjust.
5561 * src/functions/fn-information.c (gnumeric_cell) : sheet_style_get
5562 does not make a reference. Use it.
5563 * src/workbook-format-toolbar.c (modify_cell_format) : Ditto.
5564 (change_selection_font) : Ditto.
5565 * src/sheet-autofill.c (fill_item_new) : ditto.
5566 * src/print-cell.c (print_cell_range) : ditto.
5567 * src/cellspan.c (cell_calc_span) : ditto.
5568 * src/sheet.c (sheet_cell_set_text) : ditto.
5569 * src/rendered-value.c (rendered_value_calc_size) : ditto.
5570 * src/workbook-view.c (wb_view_format_feedback) : ditto.
5572 2001-01-07 Jody Goldberg <jgoldberg@home.com>
5574 * src/dialogs/dialog-cell-format.c (dialog_cell_format) :
5575 init initial style to NULL.
5576 (fmt_dialog_selection_type) : call sheet_style_get_uniform here.
5578 * src/commands.c (cmd_format_redo) : Now that apply_border is not
5579 doing a redraw we need to if there is no style applied.
5581 * src/selection.c (sheet_selection_extend_to) : Add support akin to
5582 gnumeric_sheet_rangesel_cursor_extend to extend to full col/row.
5584 * src/sheet-control-gui.c (scg_colrow_select) : extend to full col/row
5587 * src/item-bar.c (item_bar_event) : Set the selection, not extend it.
5589 2001-01-11 Morten Welinder <terra@diku.dk>
5591 * src/search.h: New file.
5592 * src/search.c: New file.
5594 * src/workbook-control-gui.c (cb_edit_search_replace): New
5597 * src/gnumeric.xml: Fix edit->sheet->rename.
5598 * src/workbook-control-gui.c: Ditto.
5600 2001-01-10 Jon K Hellan <hellan@acm.org>
5602 * src/workbook-control-gui.c (wbcg_undo_redo_labels): Add "_" in
5605 * src/gnumeric.xml: Caught another missing "_" in menu labels.
5607 2001-01-10 Morten Welinder <terra@diku.dk>
5609 * src/workbook-control-gui.c: Setup verbs EditDuplicateSheet and
5611 (wbcg_sheet_remove): Don't unref page; we no longer own the
5613 (workbook_menu_edit): mirror gnumeric.xml changes.
5615 * src/gnumeric.xml: Move "Delete Sheet" into a submenu and add
5616 duplicate, insert, and rename.
5617 Remove a few extraneous "..."
5618 Added and corrected the occasional "_" in menu labels.
5620 2001-01-09 Jon K Hellan <hellan@acm.org> (on behalf of Jody)
5622 * src/sheet.c (sheet_update_only_grid): Only set selection if it
5623 hasn't been cleared.
5625 2001-01-09 Morten Welinder <terra@diku.dk>
5627 * src/functions/fn-date.c: Fixup various docs based on a patch
5628 from Phillip J Shelton <shelton11@dingoblue.net.au>.
5630 2001-01-09 Jon K Hellan <hellan@acm.org>
5632 * src/sheet-control-gui.c (horizontal_scroll_event,
5633 vertical_scroll_event): Fix bug: Pressing both left and right
5634 button would pop up a tooltip that couldnt be removed.
5636 2001-01-07 Jon K Hellan <hellan@acm.org>
5638 * src/xml-io.c (POINT_SIZE_PRECISION): New define giving precision
5640 (xml_set_value_double): Add precision parameter. -1 means default
5642 (xml_set_value_points): New function. Set a double value for a
5643 node with POINT_SIZE_PRECISION digits precision.
5644 (xml_set_print_unit): Save in a more natural way.
5645 (xml_get_print_unit): Do not expect the node to have a child.
5646 (xml_write_print_info): Save margins as children of a "Margins"
5648 (xml_read_print_margins): New function: Read margins.
5649 (xml_read_print_info): Find the PrintInformation node so that we
5650 actually read print info.
5651 (xml_write_style): Save font size using xml_set_value_points.
5652 (xml_write_colrow_info): Save font size using
5653 xml_set_value_points.
5654 (xml_sheet_write): Save Cols, Rows DefaultSizePts using
5655 xml_set_value_points.
5657 2001-01-07 Fatih Demir <kabalak@gmx.net>
5659 * configure.in: Added tr to ALL_LINGUAS.
5661 2001-01-06 Mike Kestner <mkestner@ameritech.net>
5663 * configure.in - Depend on bonobo-0.32.
5665 * src/sheet-object-item.c (sheet_object_item_new_view): Add ui_cont
5666 param to the client_site_new_item call.
5668 2001-01-05 Jon K Hellan <hellan@acm.org>
5670 * src/workbook-control-gui.c (workbook_close_if_user_permits): Use
5671 gui_file_save instead of workbook_save.
5673 * src/gui-file.c (gui_file_import): Do not set selection
5674 mode. That belongs in the Glade file.
5676 * src/workbook-control-gui.c (cb_realize): New callback
5677 function. Make current control size the default. Toplevel would
5678 resize spontaneously. This makes it stay the same size until user
5680 (workbook_control_gui_init): Connect cb_realize to realize signal.
5682 2001-01-06 Kenneth Christiansen <kenneth@gnu.org>
5684 * configure.in, macros/autogen.sh:
5685 added support for xml-i18n-tools. This module is now required
5686 when building from cvs. Please make sure that the macrofile
5687 installed by xml-i18n-tools is installed so it's in aclocal's
5690 export ACLOCAL_FLAGS='-I <prefix>/share/aclocal'
5692 2001-01-04 Jon K Hellan <hellan@acm.org>
5694 * src/Makefile.am: Add files gui-file.c, gui-file.h
5696 * src/file.[ch]: Factor out GUI dependent parts of workbook I/O
5697 handling and move to gui-file.[ch].
5698 (file_format_get_savers, file_format_get_openers):
5699 New functions. Used by GUI to access file saver and file opener
5701 (workbook_import): Move to gui-file.[ch].
5702 (file_finish_load): Made visible in order to split out the GUI.
5703 (workbook_save_as): The old version moved to gui-file.c and was
5704 renamed to gui_file_save_as. The new version contains the GUI
5705 independent part of the old do_save_as. It has explicit file name
5706 and file saver parameters to remaining GUI independent function.
5707 (workbook_save): No longer check if it should call
5708 workbook_save_as. This happens at the GUI layer. Change control
5709 parameter to WorkbookControl.
5711 * src/file.h (struct _FileOpener, struct _FileSaver): Had to make
5712 these visible in order to split out the GUI.
5714 * src/file.c: Remove file static variable current_saver.
5715 (file_format_unregister_save): Do not update current_saver.
5716 (workbook_try_read): Report the error if failure.
5717 (cb_select, handle_ok, saver_activate,
5718 file_saver_is_default_format, fill_save_menu, make_format_chooser,
5719 file_dialog_delete_event, fs_key_event, fs_set_filename,
5720 wants_to_overwrite, can_try_save_to, dialog_query_load_file): Move
5723 * src/gui-file.c, src/gui-file.h: New files. Gui dependent parts
5724 of I/O handling moved here from file.[ch].
5725 (gui_file_import): New name for workbook_import. Use
5726 file_format_get_openers to access file opener list.
5727 (is_saver_registered): New function. Check that a given file saver
5728 is present in the file saver list.
5729 (handle_ok): Fix a bug when changing into directory user entered,
5731 (saver_activate, file_saver_is_default_format, fill_save_menu):
5732 Use file_format_get_savers to access file saver list.
5733 (file_saver_is_default_format, make_format_chooser): Add GUI
5735 (fill_save_menu): Save GUI control as object data on menu items.
5736 (do_save_as): Don't call insure_saver. That check is redundant
5737 here. Set view's preferred size to size of control's notebook
5738 before saving, so that this size gets saved in workbook.
5739 (gui_file_save_as): New name for old workbook_save_as.
5740 Verify that control's current saver is still valid before displaying
5742 (dialog_query_load_file): Simplify code to select workbook's
5744 (gui_file_save): New function. Set view's preferred size as in
5745 do_save_as, then call workbook_save.
5747 * src/workbook-control-gui.c (cb_autosave, cb_file_save): Call
5748 gui_file_save instead of workbook_save.
5749 (workbook_close_if_user_permits): Cast wbcg to WorkbookControl
5750 before calling workbook_save.
5751 (cb_file_import): Call gui_file_import instead of workbook_import.
5752 (cb_file_save_as): Call gui_file_save_as instead of
5755 * src/workbook-control-gui-priv.h (struct _WorkbookControlGUI):
5756 Add current_saver member. Include file.h.
5758 2001-01-04 Jody Goldberg <jgoldberg@home.com>
5760 * src/gnumeric-sheet.c (rangesel_{horizontal,vertical}_move) : remove
5761 crufty use of ItemCursor::base. The cursors have both corners now.
5763 2001-01-04 Jody Goldberg <jgoldberg@home.com>
5765 * src/item-cursor.c (item_cursor_event) : animated cursors can no be
5766 dragged or resized. NOTE : This introduces a small bug while
5767 fixing another. The animated cursor is frequently drawn on top of
5768 the current selection cursor when it is first created. As such the
5769 selection cursor does not receive all the events it should.
5770 Ideally the canvas would pass ignored events to the widget below, but
5771 that is not going to happen. We can not just forward the events to
5772 the other cursor because it may have moved. We would need to ensure
5773 that we only forward things in the areas that are overlapping. Which
5775 (item_cursor_set_spin_base) : delete.
5777 * src/item-grid.c (item_grid_button_1) : support shift-extending a
5778 range selection cursor.
5780 * src/workbook-view.c (wb_view_selection_desc) : Add some safety.
5782 * src/gnumeric-sheet.c (gnumeric_sheet_rangesel_cursor_extend) :
5783 Intelligently handle extension to full rows/cols and rename from
5784 gnumeric_sheet_selection_extend.
5785 (start_cell_selection_at) : no need to set the base a second time.
5786 (gnumeric_sheet_rangesel_cursor_bounds) : rename from
5787 gnumeric_sheet_selection_cursor_place and allow the specification of
5788 base and move coords.
5789 (gnumeric_sheet_selection_cursor_base) : delete.
5791 * src/item-bar.c (is_pointer_on_division) : no resizing while range
5793 (get_element_from_pixel) : delete dead code.
5795 2001-01-03 Jody Goldberg <jgoldberg@home.com>
5797 * src/item-bar.c (item_bar_event) : Call scg_colrow_select directly.
5798 and convert from using 'is_vertical' to 'is_cols' which is the
5799 convention everywhere else.
5800 (cb_extend_selection) : ditto.
5801 (colrow_tip_setlabel) : ditto.
5802 (item_bar_marshal) : delete.
5803 (get_row_name) : fortify a bit.
5805 * src/sheet-control-gui.c (scg_colrow_select) : merge together from
5806 sheet_view_{col,row}_selection_changed and rewrite.
5807 (sheet_view_construct) : remove handlers for the item-bar signal.
5809 * src/commands.c (cmd_autofill_redo) : check for array violations.
5810 Clear the target range. This will allow entire arrays to be filled.
5811 (cmd_autofill) : Use the area that we will be filling rather. Excude
5812 the area that will not change.
5814 * src/sheet.c (sheet_{col,row}_get_info) : simplify.
5816 * src/selection.c (walk_boundaries) : don't walk into hidden cols/rows.
5818 2001-01-02 Jody Goldberg <jgoldberg@home.com>
5820 * src/Makefile.am : add the new file.
5822 * src/sheet-style.h : new file split from sheet.h in preparation
5823 for changing the style engine.
5825 2001-01-01 Jody Goldberg <jgoldberg@home.com>
5827 * src/colrow.c (cb_set_colrow_size) : ignore resize requests for
5830 2000-12-30 Jody Goldberg <jgoldberg@home.com>
5832 * src/commands.c : fix includes.
5833 * src/file-autoft.c : ditto.
5834 * src/format-template.c : ditto.
5835 * src/workbook-format-toolbar.c : ditto.
5836 * src/xml-io-autoft.c : ditto.
5837 * src/format-template.h : do not in include <config.h> publicly
5839 * src/mstyle.c (mstyle_new_default) : use style_color_{black,white}
5841 2000-12-30 Jody Goldberg <jgoldberg@home.com>
5843 * rename border.[ch] -> style-border.[ch]
5844 * rename color.[ch] -> style-color.[ch]
5846 2000-12-30 Jody Goldberg <jgoldberg@home.com>
5848 * src/border.c (style_border_draw) : Take a StyleBorderLocation rather
5849 than an MSTYLE_ELEMENT. The fit is more natural.
5850 (style_border_print) : ditto.
5851 (style_border_get_orientation) : ditto.
5853 2000-12-30 Jon K Hellan <hellan@acm.org>
5855 * src/workbook-control-gui.c (wbcg_size_pixels_set): Remove it.
5856 (workbook_setup_edit_area, workbook_setup_sheets)): Add GTK_SHRINK
5857 option to gtk_table_attach.
5858 (show_gui): New function. Size window, then show it. If
5859 the workbook specifies a preferred size, the notebook is sized,
5860 and the window size constrained to not exceed the screen
5861 size. Otherwise, a size is computed based on screen size. Parts
5862 extracted from workbook_control_gui_init.
5863 (workbook_control_gui_init): Move sizing to show_gui. To be sure
5864 that everything is initialized, run show_gui as a GTK idle proc.
5866 2000-12-30 Jody Goldberg <jgoldberg@home.com>
5868 * src/cell-draw.c (cell_draw) : sync drawing with
5869 * src/print-cell.c (print_cell) : printing.
5871 * src/item-grid.c (item_grid_draw) : sync drawing with
5872 * src/print-cell.c (print_cell_range) : printing.
5873 (print_merged_range) : new function, sort of works. We need to draw
5874 grids AFTER content to avoid this sort of sillyness.
5876 2000-12-29 Jody Goldberg <jgoldberg@home.com>
5878 * src/cell-draw.c (cell_draw) : support multiline text in merged
5881 * src/sheet.c (cb_max_cell_height) : merged cells do not contribute to
5884 2000-12-29 Jody Goldberg <jgoldberg@home.com>
5886 * src/sheet-autofill.c (sheet_autofill_dir) : support merged cells.
5887 (fill_item_new) : Ditto.
5890 (sheet_merge_add) : rename
5891 (sheet_merge_remove) : rename
5892 (sheet_merge_get_overlap) : rename
5893 (sheet_merge_contains_pos) : rename
5894 (sheet_merge_is_corner) : rename
5895 (sheet_merged_relocate) : rename
5896 (sheet_merge_get_adjacent) : rename
5898 * src/rendered-value.c (rendered_value_new) : Use
5899 sheet_merge_is_corner rather than sheet_region_get_merged_cell.
5901 2000-12-29 Jody Goldberg <jgoldberg@home.com>
5903 * src/sheet-control-gui.c (scg_object_update_bbox) : Use the
5904 stored coordinates for movement.
5905 (scg_object_calc_position) : handle inversion and store the
5907 (cb_control_point_event) : use the stored coordinates.
5909 2000-12-29 Jody Goldberg <jgoldberg@home.com>
5911 * src/sheet.c (sheet_redraw_cell_region) : support merged cells.
5913 * src/style.c (style_font_new_simple) : guestimate width.
5914 (style_font_get_width) : new function.
5916 * src/rendered-value.c (rendered_value_new) : appoximate with via pts.
5917 handle merged cells.
5919 2000-12-29 Jody Goldberg <jgoldberg@home.com>
5921 * src/sheet.c (sheet_region_unmerge) : untag an existing cell as being
5923 (sheet_cell_remove_from_hash) : ditto.
5924 (sheet_region_merge) : tag an existing cell as being merged.
5925 (sheet_cell_add_to_hash) : ditto.
5927 * src/item-edit.c (recalc_spans) : support merged cells.
5929 2000-12-29 Jody Goldberg <jgoldberg@home.com>
5931 * src/xml-io.c (xml_read_cell) : Early versions had newlines at the
5932 end of their content
5934 * src/sheet.c (sheet_{insert,delete}_{cols,rows}) : no need to update
5935 object positions, we have already moved them.
5937 2000-12-29 Jody Goldberg <jgoldberg@home.com>
5939 * src/commands.c (GNUMERIC_MAKE_COMMAND_WITH_PARENT) : new macro.
5940 (update_after_action) : new function to localize calls to
5941 sheet_update, dirty, recalc.
5942 (GnumericCommand) : Add a sheet to help localize repeated calls to
5943 sheet_update, dirty, recalc.
5944 (command_undo) : Call update_after_action.
5945 (command_redo) : Call update_after_action.
5946 (command_push_undo) : Call update_after_action.
5947 (cmd_*_{undo,redo}) : remove calls to sheet_update, dirty, recalc.
5948 (cmd_*) : set the sheet.
5949 (cmd_paste_cut_update_origin) : new function.
5950 (cmd_paste_cut_undo) : call cmd_paste_cut_update_origin.
5951 (cmd_paste_cut_redo) : ditto.
5953 * src/commands.c (CmdMergeCells) : inherit from CmdUnmergeCells to
5954 facilitate reuse and implement.
5956 2000-12-27 Jody Goldberg <jgoldberg@home.com>
5958 * src/sheet.c (sheet_cell_insert) : privatize.
5959 (sheet_cell_remove_simple) : privatize.
5961 2000-12-27 Morten Welinder <terra@diku.dk>
5963 * src/workbook-format-toolbar.c
5964 (workbook_format_toolbutton_update): Plug leak.
5966 2000-12-27 Jody Goldberg <jgoldberg@home.com>
5968 * src/workbook-format-toolbar.c (cb_unmerge_cells) : hook up the
5970 (cb_merge_cells) : ditto. Although merge is not yet implemented.
5972 * src/sheet.c (sheet_update_only_grid) : Add support for repositioning
5974 (sheet_region_unmerge) : set the flag here.
5975 (sheet_region_merge) : and here.
5977 * src/commands.c (cmd_unmerge_cells) : implement.
5978 (cmd_unmerge_cells_destroy) : ditto.
5979 (cmd_unmerge_cells_redo) : ditto.
5980 (cmd_unmerge_cells_undo) : ditto.
5982 2000-12-26 Jody Goldberg <jgoldberg@home.com>
5984 * src/item-cursor.c (cb_move_cursor) : fix old off by 1 error.
5986 * src/workbook-format-toolbar.c (workbook_format_toolbar)
5987 merge/unmerge are not toggle items.
5989 * src/gnumeric.xml : Add entries for merge/unmerge.
5991 * s/MStyleBorder/StyleBorder/
5993 2000-12-26 Morten Welinder <terra@diku.dk>
5995 * src/analysis-tools.c (set_cell_text_col, set_cell_text_row): New
5997 (summary_statistics): Use set_cell_text_col and/or
5999 (ztest_tool): Ditto.
6000 (ttest_paired_tool): Ditto.
6001 (ttest_eq_var_tool): Ditto.
6002 (ttest_neq_var_tool): Ditto.
6003 (ftest_tool): Ditto.
6004 (regression_tool): Ditto.
6005 (anova_single_factor_tool): Ditto.
6006 (anova_two_factor_without_r_tool): Ditto.
6008 2000-12-25 Jody Goldberg <jgoldberg@home.com>
6010 * src/ranges.h : clean up includes.
6012 2000-12-25 Almer S. Tigelaar <almer1@dds.nl>
6014 * src/clipboard.c : Remove superflous remnants of
6015 the previously integrated gui-clipboard.c
6017 * src/gui-clipboard.c (x_selection_handler) :
6018 Replace the hardcoded "2000" with the GNUMERIC_ATOM_INFO
6022 (paste_cell_with_operation) : Get rid of sheet_cell_insert.
6023 (paste_cell) : Idem.
6025 2000-12-22 Jody Goldberg <jgoldberg@home.com>
6027 * src/format.c (format_number) : partial support for formats of the
6028 form [$<currency>-{digit}+]. Eventually we may want to understand
6029 what the locale specifier changes.
6031 2000-12-22 Jody Goldberg <jgoldberg@home.com>
6033 * src/sheet-object-container.c (sheet_object_container_new) : new
6035 (sheet_object_container_new_bonobo) : delete.
6037 2000-12-22 Jody Goldberg <jgoldberg@home.com>
6039 * src/cell.c (cell_set_expr_and_value) : Make linking the
6040 expression optional.
6042 * src/ranges.c (range_init_full_sheet) : adjusted from
6043 sheet_get_full_range.
6045 2000-12-22 Zbigniew Chyla <cyba@gnome.pl>
6047 * plugins/applix/boot.c gnumeric/plugins/applix/boot.c,
6048 plugins/lotus-123/boot.c gnumeric/plugins/lotus-123/boot.c,
6049 plugins/oleo/boot.c gnumeric/plugins/oleo/boot.c,
6050 plugins/xbase/boot.c gnumeric/plugins/xbase/boot.c:
6051 Used g_extension_pointer() function from gnome-libs, removed
6052 unnecessary function (filename_ext).
6054 2000-12-22 Zbigniew Chyla <cyba@gnome.pl>
6056 * src/plugin.c (plugin_load): Displaying plugin name as part of
6057 error messages. Removed allocation check - g_new0 is guaranteed to
6058 return value != NULL unless sizeof (type) == 0.
6060 2000-12-22 Zbigniew Chyla <cyba@gnome.pl>
6062 * src/dialogs/dialog-stf-preview.c: Fixed bug. Allocated array was
6065 2000-12-21 Jody Goldberg <jgoldberg@home.com>
6067 * src/bonobo-io.c (gnumeric_bonobo_obj_read) : Don't create the object
6070 2000-12-20 Jody Goldberg <jgoldberg@home.com>
6072 * src/sheet-object.c (sheet_object_position_pixels) : Add some safety.
6074 * src/selection.c (selection_is_simple) : Fix warning.
6076 2000-12-20 Morten Welinder <terra@diku.dk>
6078 * src/mathfunc.c (gnumeric_add_epsilon): New function for more
6079 user-wanted rounding behaviour.
6080 (gnumeric_fake_floor, gnumeric_fake_ceil, gnumeric_fake_round):
6083 * src/fn-math (gnumeric_round, gnumeric_roundup,
6084 gnumeric_rounddown, gnumeric_trunc, gnumeric_ceil,
6085 gnumeric_floor): use fake rounding.
6087 2000-12-20 Jody Goldberg <jgoldberg@home.com>
6089 * src/workbook-control-gui.c (insert_bonobo_object) : utility routine
6090 to create objects and to catch errors.
6091 (cb_insert_bonobo_object) : used here.
6092 (select_component_id) : and here.
6094 * src/sheet-object-bonobo.c (sheet_object_bonobo_set_object_iid) :
6095 handle object creation failure.
6097 * src/sheet-object.c (sheet_object_destroy) : Handle the destruction
6098 of objects before they are attached to a sheet.
6100 2000-12-20 Zbigniew Chyla <cyba@gnome.pl>
6102 * src/dialogs/dialog-autoformat.c (cb_get_cell_content): Reverted
6103 g_strtod => strtod change. I was wrong.
6105 2000-12-20 Zbigniew Chyla <cyba@gnome.pl>
6107 * src/value.c (value_compare): Use strcoll() when comparing string
6108 values (interpret strings as appropriate for the current locale).
6110 2000-12-20 Zbigniew Chyla <cyba@gnome.pl>
6112 * templates/autoformat/*.xml: Added Polish translations.
6114 2000-12-20 Morten Welinder <terra@diku.dk>
6116 * src/file-autoft.c: Include <config.h>.
6118 2000-12-20 Zbigniew Chyla <cyba@gnome.pl>
6120 * src/Makefile.am: Removed "-DGNUMERIC_AUTOFORMATDIR" from INCLUDES.
6121 Now we use a function inside Gnumeric for this.
6123 * src/dialogs/dialog-autoformat.c:
6124 Marked strings for translation (sample data).
6125 (struct AutoFormatInfo): Now we have field current_category_group
6126 (of type FormatTemplateCategoryGroup *) instead of current_category
6127 and category_groups instead of categories.
6128 (cb_get_cell_content): Function g_strtod always uses "C" locale,
6129 used strtod instead.
6130 (templates_load): Mostly new implementation, uses
6131 category_group_get_templates_list().
6132 (cb_remove_current_activated): Now it is implemented.
6133 (cb_canvas_button_release): Showing real category name
6134 (template->category->name). Setting sensitivity of
6135 info->remove_current menu item.
6136 (cb_category_popwin_hide): Used
6137 category_group_list_find_category_by_name when setting
6138 info->current_category_group and category_list_get_names_list
6139 when calling gtk_combo_set_popdown_strings. Selecting "General"
6140 category by default if it exists. Displaying current category
6141 description in the category combo tooltip.
6143 * src/file-autoft.c, src/file-autoft.h: New functions:
6144 gnumeric_sys_autoformat_dir, gnumeric_usr_autoformat_dir,
6145 gnumeric_extra_autoformat_dirs,
6146 category_free, category_get_templates_list, category_list_free,
6147 category_group_free, category_group_get_templates_list,
6148 category_group_list_get, category_group_list_find_category_by_name,
6149 category_group_list_get_names_list, category_group_list_free.
6150 Removed functions: template_list_load, template_list_free,
6151 util_list_free, category_list_load, category_list_free.
6153 * src/format-template.c, src/format-template.h:
6154 New function: format_template_compare_name.
6155 New structs: FormatTemplateCategory and
6156 FormatTemplateCategoryGroup.
6157 (struct FormatTemplate): field category is now of type
6158 FormatTemplateCategory.
6160 * src/gutils.c, src/gutils.h: New functions: g_create_list,
6161 g_lang_score_in_lang_list, g_lang_score_is_better (implemented
6164 * src/xml-io-autoft.c:
6165 (xml_write_format_template_members): Don't write category
6167 (xml_read_format_template_members): Used
6168 xml_search_child_lang_list instead of xml_search_child to find
6169 "Information" node. Ignore category information.
6170 (gnumeric_xml_read_format_template_category): New function.
6172 * src/xml-io-autoft.h: Added
6173 gnumeric_xml_read_format_template_category function declaration.
6175 * src/xml-io.c, src/xml-io.h: New functions:
6176 xml_search_child_lang_list, xml_search_child_no_lang,
6177 xml_search_child_lang_list_with_score (static function).
6179 * templates/autoformat/3D.category,
6180 templates/autoformat/Financial.category,
6181 templates/autoformat/Classical.category,
6182 templates/autoformat/General.category,
6183 templates/autoformat/Colourful.category,
6184 templates/autoformat/List.category:
6185 New files, XML descriptions of default categories.
6187 * templates/autoformat/Makefile.am:
6188 Templates grouped into categories, now every category is installed
6189 in separate directory. Installing *.category files as ".category" in
6190 appropriate directories.
6192 2000-12-20 Jon K Hellan <hellan@acm.org>
6194 * src/file.c (dialog_query_load_file): Select directory of
6195 workbook file if there is one.
6197 2000-12-20 Jody Goldberg <jgoldberg@home.com>
6199 * src/selection.c (selection_is_simple) : Handle merged cells and
6202 * src/sheet.c (sheet_relocate_merged) : new function.
6204 * src/sheet-object.c (sheet_relocate_objects) : we only need to move
6205 objects in the origin zone.
6207 2000-12-19 Jody Goldberg <jgoldberg@home.com>
6209 * src/sheet.c (sheet_clone_merged_regions) : implement.
6210 (sheet_duplicate) : call sheet_clone_merged_regions.
6212 * src/xml-io.c (xml_sheet_read) : add IO for merged regions.
6213 (xml_sheet_write) : Ditto.
6214 (xml_read_merged_regions) : new function.
6215 (xml_write_merged_regions) : new function.
6217 2000-12-19 Morten Welinder <terra@diku.dk>
6219 * configure.in: Introduce variables for the <yes> and <no> visible
6220 markers. Prepare for fanciness.
6222 * src/complete-sheet.c (complete_sheet_class_init): Set finalize.
6223 (complete_sheet_finalize): New function.
6224 (complete_sheet_destroy): Move the freeing of ->current to
6227 * src/complete.c (complete_destroy): Zero out text field after
6229 (complete_start): Handle the special case of text not changing.
6231 2000-12-19 Miguel de Icaza <miguel@helixcode.com>
6233 * src/complete.h (CompleteClass): new method: start_over.
6235 * src/complete.c (complete_start): invoke start_over.
6237 * src/complete.c, src/complete-sheet.c: Use E_MAKE_TYPE instead of
6240 2000-12-18 Jody Goldberg <jgoldberg@home.com>
6242 * src/selection.c (walk_boundaries) : Make smart walking of merged
6243 cells optional. It only seems to affect walking fixed regions.
6244 (sheet_selection_walk_step) : Fix previous thinko.
6246 2000-12-18 Jody Goldberg <jgoldberg@home.com>
6248 * src/selection.c (sheet_selection_walk_step) : recognize singletons
6249 even when they are merged cells.
6251 2000-12-18 Jody Goldberg <jgoldberg@home.com>
6253 * src/selection.c (sheet_selection_walk_step) : support merged cells.
6254 (walk_boundaries) : Rewrite to support intelligent walking of merged
6257 * src/sheet.c (sheet_set_edit_pos) : signature change.
6259 2000-12-18 Morten Welinder <terra@diku.dk>
6261 * src/eval.c (sheet_region_get_deps): Take a Range pointer, not a
6262 Range structure as argument. All callers changed.
6264 2000-12-18 Jon K Hellan <hellan@acm.org>
6266 * src/print.c (print_page): Fix bug: We must use gnome-print
6267 coordinate system when clipping to page limit. Also take into
6268 account that Postscript/gnome-print clip paths exclude the pixels
6271 2000-12-18 Almer S. Tigelaar <almer1@dds.nl>
6273 * configure.in : Fix typo in gb check.
6275 2000-12-17 Jody Goldberg <jgoldberg@home.com>
6277 * configure.in : Post release bump
6279 2000-12-17 Jody Goldberg <jgoldberg@home.com>
6283 2000-12-17 Jody Goldberg <jgoldberg@home.com>
6285 * src/ranges.c (parse_range) : support singletons.
6287 * src/sheet-object.c (sheet_object_write_xml) : Store the anchor
6289 (sheet_object_read_xml) : restore the descriptor.
6291 2000-12-17 Jody Goldberg <jgoldberg@home.com>
6293 * src/gnumeric-sheet.c (cursor_vertical_move) : fix cut-n-paste-o.
6294 (rangesel_vertical_move) : Ditto.
6296 2000-12-17 Jody Goldberg <jgoldberg@home.com>
6298 * src/sheet.c (sheet_find_boundary_horizontal) : support merged cells
6300 (sheet_find_boundary_vertical) : Ditto.
6302 * src/gnumeric-sheet.c (gnumeric_sheet_set_cursor_bounds) : Remove
6303 unnecessary sanity checks.
6304 (cursor_horizontal_move) : pass the base row.
6305 (cursor_vertical_move) : Ditto.
6306 (rangesel_horizontal_move) : Ditto.
6307 (rangesel_vertical_move) : Ditto.
6308 (rangesel_horizontal_extend) : Ditto.
6309 (rangesel_vertical_extend) : Ditto.
6311 * src/selection.c (sheet_selection_extend) : Pass the base row/col.
6312 * src/item-cursor.c (item_cursor_selection_event) : Ditto.
6314 2000-12-17 Almer S. Tigelaar <almer1@dds.nl>
6316 * src/dialogs/dialog-stf-preview.c (stf_preview_format_line) :
6317 Pass desired format to format_match to preserve certain formatting
6318 information which would previously have been lost.
6320 * src/stf.c (stf_read_workbook) : First apply the styles to
6321 the sheet and then fill the contents of the cells instead of
6324 2000-12-17 Morten Welinder <terra@diku.dk>
6326 * src/about.c (dialog_about): Made a little more consistent in
6329 2000-12-17 Jody Goldberg <jgoldberg@home.com>
6331 * src/sheet.c (sheet_new_sheet_view) : no need to normalize.
6332 (sheet_cursor_set) : no need to normalize.
6334 * src/item-cursor.c (item_cursor_set_bounds) : Add a notion of
6335 move_corner and base_corner.
6337 * src/gnumeric-sheet.c
6338 (cursor_horizontal_move) : renamed from move_cursor_horizontal.
6339 (cursor_horizontal_extend) : renamed from
6340 move_horizontal_selection.
6341 (cursor_vertical_move) : renamed from move_cursor_vertical.
6342 (cursor_vertical_extend) : renamed from move_vertical_selection.
6343 (gnumeric_sheet_selection_extend) : no need to normalize. the
6344 item-cursor now does it for us.
6345 (rangesel_horizontal_move) : renamed from
6346 selection_cursor_move_horizontal.
6347 (rangesel_vertical_move) : renamed from
6348 selection_cursor_move_vertical.
6349 (rangesel_horizontal_extend) : renamed from
6350 selection_expand_horizontal. Use the new item-cursor base/move
6352 (rangesel_vertical_extend) : renamed from
6353 selection_expand_vertical. Use the new item-cursor base/move
6355 (gnumeric_sheet_key_mode_sheet) : simplify.
6357 * src/sheet.c (sheet_find_boundary_horizontal) : support merged cells.
6358 (sheet_find_boundary_vertical) : ditto.
6359 (sheet_set_edit_pos) : Add edit_pos vs edit_pos_real to improve merged
6361 (sheet_region_get_merged_cell) : new function.
6363 * src/gnumeric-sheet.c (move_cursor_horizontal) : Use edit_pos_real to
6364 improve handling for merged cells.
6365 (move_cursor_vertical) : Ditto.
6366 (start_cell_selection) : Ditto.
6368 2000-12-16 Jody Goldberg <jgoldberg@home.com>
6370 s/Sheet::cursor::edit_pos/Sheet::edit_pos/
6372 * src/gnumeric-sheet.c (gnumeric_sheet_new) : No need to pass in the
6373 col/row items. They are available from the sheet control.
6375 * src/sheet-control-gui.c (sheet_view_construct) : signature change to
6378 2000-12-15 Jody Goldberg <jgoldberg@home.com>
6380 Tidy up the naming scheme a bit.
6383 s/SheetSelection/Range/
6385 * src/workbook-cmd-format.c (workbook_cmd_resize_selected_colrow) :
6386 Merged from workbook_cmd_format_column_width and.
6387 & workbook_cmd_format_row_height
6389 * src/item-bar.c (item_bar_end_resize) : Call scg_colrow_size_set
6391 (item_bar_class_init) : remove the SIZE_CHANGED signal.
6393 * src/selection.c (sheet_selection_full_cols_rows) : merge
6394 sheet_selection_full_cols & sheet_selection_full_rows.
6396 2000-12-14 Jody Goldberg <jgoldberg@home.com>
6398 * src/item-grid.c (item_grid_draw) : Move the span handling here.
6399 * src/cell-draw.c (cell_draw) : from here.
6401 * src/print-cell.c (print_cell_range) : Move the span handling here.
6402 (print_cell) : rather than here.
6404 * src/sheet-control-gui.c (scg_get_distance) : merge
6405 sheet_{row,col}_distance_get_pixels and make the result sheet
6408 2000-12-14 Jody Goldberg <jgoldberg@home.com>
6410 * src/cell.c (cell_convert_expr_to_value) : rename from
6413 * src/format.c (format_number) : adjust signature to take the
6414 colwidth in preparation for supporting
6415 (format_value) : pass in the width.
6417 2000-12-14 Jody Goldberg <jgoldberg@home.com>
6419 * src/formats.c (currency_date_format_init) : correctly place currency
6420 before or after the value, and optionally include a space.
6422 * src/format.c (format_get_currency) : include info on currency
6425 2000-12-14 Jody Goldberg <jgoldberg@home.com>
6427 * src/workbook.c (workbook_sheet_rename) : Handle renames that only
6428 change case more smoothly.
6430 2000-12-14 Jody Goldberg <jgoldberg@home.com>
6432 * configure.in : Gussy up the reporting to improve readability
6434 2000-12-14 Jody Goldberg <jgoldberg@home.com>
6436 * src/sheet-object-bonobo.c (sheet_object_bonobo_construct) : create
6437 the client site here.
6438 (sheet_object_bonobo_set_object_iid) : rather than here.
6440 2000-12-14 Jody Goldberg <jgoldberg@home.com>
6442 * src/gnumeric-util.c (gnumeric_entry_at_subexpr_boundary_p) :
6445 2000-12-11 Morten Welinder <terra@diku.dk>
6447 * src/functions/fn-math.c (gnumeric_round): Apply patch from
6448 hans@snow.nl, see bug 34844.
6450 * src/functions/fn-math.c (help_int): fix bogus docs for negative
6453 * configure.in: clean up quote stuff.
6455 2000-12-10 Morten Welinder <terra@diku.dk>
6457 * configure.in: first cut at improved version checks for required
6460 2000-12-10 Jody Goldberg <jgoldberg@home.com>
6462 * src/expr-name.c (expr_name_invalidate_refs_sheet) : comment out
6463 the warning. The life cycles of names are too fluid to scare
6465 (expr_name_invalidate_refs_wb) : Ditto.
6467 2000-12-10 Jody Goldberg <jgoldberg@home.com>
6469 * src/cell.c (cell_set_text) : send the current format to the
6471 * src/sheet.c (sheet_cell_set_text) : Ditto.
6473 * src/parse-util.c (parse_text_value_or_expr) : send the current
6474 format to the number matcher.
6476 * src/number-match.c (format_match) : take the current format as a
6477 parameter. Begin using it to handle cells formated as text.
6479 * src/format.c (style_format_is_text) utility routine.
6481 2000-12-09 Jody Goldberg <jgoldberg@home.com>
6483 * src/selection.c (sheet_selection_set_internal) : rename from
6484 sheet_selection_set and add the 'just_add_it' flag to indicate
6485 that we don't need to do anything fancy.
6487 2000-12-09 Chema Celorio <chema@celorio.com>
6489 * src/xml-io.c (xml_write_names): Always write a <Names> node,
6490 even if it is empty. (See comment in code for details)
6492 * src/sheet.c (sheet_new): make sheet->names NULL.
6493 (sheet_clone_names): free the list with g_list_free not g_free
6494 (sheet_clone_names): add a warning about not duplicating
6497 * src/expr-name.h (expr_name_wb2sheet): add prototypes for
6500 * src/expr-name.c (expr_name_unlink): new funct. Code from
6502 (expr_name_remove): call expr_name_unlink
6503 (expr_name_invalidate_refs_name): add a warning about this
6504 function not being implemented
6505 (expr_name_invalidate_refs_sheet): ditto
6506 (expr_name_invalidate_refs_wb): ditto
6507 (expr_name_sheet2wb): new funct. changed the scope of a
6508 NamedExpression from sheet to workbook.
6509 (expr_name_wb2sheet): not implemented yet. Workbook to sheet scope
6512 2000-12-09 Jody Goldberg <jgoldberg@home.com>
6514 * src/sheet-control-gui.c (scg_comment_display) : Always clear the
6517 * src/gnumeric-util.c (gnumeric_entry_at_subexpr_boundary_p)
6518 : Add '<' '>'. Bug 34642
6520 2000-12-09 Jody Goldberg <jgoldberg@home.com>
6522 * src/sheet-object.c (sheet_object_construct) : delete.
6523 (sheet_object_set_bounds) : Delete.
6524 (sheet_object_set_sheet) : new function.
6525 (sheet_object_clear_sheet) : new function.
6526 (sheet_object_read_xml) : implement.
6527 (sheet_object_write_xml) : implement.
6528 (sheet_object_range_get) : support setting the range without a having
6530 (sheet_relocate_objects) : Use set_sheet & clear_sheet.
6531 (sheet_object_register) : new function.
6533 * src/sheet-object-widget.c (sheet_widget_checkbox_set_sheet) : new
6534 function. we need to move the dependent into the new sheet.
6535 (sheet_widget_checkbox_clear_sheet) : ditto.
6537 * src/sheet-object-graphic.c :
6538 (sheet_object_graphic_{read,write)_xml) : new functions.
6539 (sheet_object_filled_{read,write)_xml) : new functions.
6541 * src/sheet-object-container.c (view_activated_cb) : no more
6542 sheet_object_construct.
6544 * src/sheet-object-cell-comment.c (cell_comment_{read,write)_xml) :
6547 * src/sheet-object-bonobo.c (sheet_object_bonobo_{read,write)_xml) :
6548 New functions. These need work. the 'read_fn' and 'write_fn' do
6549 not merge nicely yet.
6551 * src/main.c (gnumeric_main) : Register the sheet object types.
6552 We need this until the plugin scheme is ready.
6554 * src/item-grid.c (cb_obj_create_button_release) : Use set_sheet
6555 rather than realize.
6557 * src/bonobo-io.c (gnumeric_bonobo_obj_write) : constness.
6559 2000-12-08 Jody Goldberg <jgoldberg@home.com>
6561 From :Ade Lovett <ade@FreeBSD.org>
6562 * templates/english/Makefile.am : typo.
6563 * idl/Makefile.am : Ditto.
6565 2000-12-08 Jody Goldberg <jgoldberg@home.com>
6567 * src/sheet-object.c (sheet_object_write_xml) : protect from missing
6569 (sheet_object_read_xml) : Ditto.
6571 2000-12-07 Jody Goldberg <jgoldberg@home.com>
6573 * configure.in : Bump the version number
6575 2000-12-07 Jody Goldberg <jgoldberg@home.com>
6579 2000-12-07 Jody Goldberg <jgoldberg@home.com>
6581 * src/item-grid.c : Disable canvas grab debug.
6582 * src/item-cursor.c : Ditto.
6583 * src/item-bar.c : Ditto.
6584 * src/sheet-control-gui.c : Ditto.
6586 2000-12-07 Jody Goldberg <jgoldberg@home.com>
6588 * src/sheet-control-gui.c (scg_context_menu) : Use more of the new
6591 2000-12-07 Jody Goldberg <jgoldberg@home.com>
6593 * src/expr.c (cellrange_relocate) : disable the relocating the partner
6594 for forced partial relocation.
6596 2000-12-07 Jody Goldberg <jgoldberg@home.com>
6598 * src/application.c (application_init) : Add some new icons
6600 * src/gnumeric.xml : Use the new icons
6601 * src/workbook-control-gui.c : Ditto
6602 * src/workbook-format-toolbar.c : Ditto.
6604 2000-12-07 Jody Goldberg <jgoldberg@home.com>
6606 * src/mstyle.c (mstyle_hash) : add indent.
6607 (mstyle_element_equal) : Ditto.
6608 (mstyle_new_default) : Ditto.
6609 (mstyle_[gs]et_orientation) : new functions.
6611 2000-12-06 Jody Goldberg <jgoldberg@home.com>
6613 * configure.in : Update GAL req.
6615 2000-12-06 Jon K Hellan <hellan@acm.org>
6617 * src/file.c (set_ok): Rename to handle_ok. Make it check if
6618 current file selection is a directory. If so, change to the
6619 directory and continue selecting file.
6621 2000-12-05 Jody Goldberg <jgoldberg@home.com>
6623 * src/sheet.c (sheet_region_adjacent_merge) : new function.
6625 * src/cellspan.c (cell_calc_span) : Use it here to pre bound the
6626 potential span region.
6628 2000-12-05 Jody Goldberg <jgoldberg@home.com>
6630 * src/item-grid.c (item_grid_draw_merged_range) : Draw borders too.
6631 This can easily be optimized.
6633 * src/selection.c (sheet_selection_add_range) : Use
6634 sheet_selection_set.
6636 2000-12-05 Morten Welinder <terra@diku.dk>
6638 * src/sheet-object.c (sheet_object_realize): Check that the sheet
6639 object belongs to a valid sheet.
6641 2000-12-05 Jody Goldberg <jgoldberg@home.com>
6643 * src/workbook-control-gui.c (wbcg_zoom_feedback) : Move the bounding
6644 box if the zoom changes.
6646 2000-12-04 Jody Goldberg <jgoldberg@home.com>
6648 * src/workbook-view.c (wb_view_sheet_focus) : Init the selection
6649 descriptor and format format.
6650 (wb_view_selection_desc) : new function.
6651 (workbook_view_init) : Init the expression and format before setting
6652 the current sheet. Setting the sheet will update the content.
6654 * src/workbook-control.c (wb_control_sheet_add) : Init the format,
6655 edit line, and selection descriptor.
6657 * src/selection.c (sheet_get_selection_name) : Delete.
6658 (sheet_selection_extend_to) : Use wb_view_selection_desc.
6660 * src/gnumeric-sheet.c (gnumeric_sheet_key_release) : Use
6661 wb_view_selection_desc.
6662 * src/item-grid.c (item_grid_event) : Ditto.
6664 2000-12-05 Michael Meeks <michael@helixcode.com>
6666 * src/main.c (gnumeric_main): do the bonobo activate before we
6667 start doing CORBA calls and bonobo stuff!
6669 * src/embeddable-grid.c: Fixup for the generic factory.
6671 2000-12-04 Jody Goldberg <jgoldberg@home.com>
6673 * src/workbook-view.c (wb_view_edit_line_set) : renamed from
6674 workbook_edit_load_value and tweaked to operate on the view level.
6676 * src/workbook-edit.c (workbook_finish_editing) : Adjust to changes in
6677 edit-line update api.
6679 * src/sheet.c (sheet_update) : Use wb_view_edit_line_set.
6681 * src/workbook-view.c (wb_view_sheet_focus) : bug 34185.
6683 2000-12-04 Morten Welinder <terra@diku.dk>
6685 * src/mstyle.c (mstyle_hash): Don't shift all the hash information
6686 away. Rotate, don't shift.
6688 * src/mathfunc.c: white-space mania.
6690 * src/item-bar.c: Make debug-code statement-safe, just in case.
6691 * src/item-cursor.c: Ditto.
6692 * src/item-grid.c: Ditto.
6693 * src/sheet-control-gui.c: Ditto.
6695 * src/sheet-object-widget.c (sheet_widget_checkbox_user_config):
6698 * src/number-match.c (print_regex_error): Print error code
6699 numerically if our switch does not catch it. Catch REG_EBOL and
6700 REG_EEOL. Print errors to stderr.
6701 (format_match_define): Change result type to gboolean. Plug leak.
6702 (format_create_regexp): Properly regexp-quote quoted
6705 2000-12-04 Zbigniew Chyla <cyba@gnome.pl>
6707 * src/sheet-object-widget.c (sheet_widget_checkbox_toggled): calling
6708 workbook_recalc() after setting cell value based on checkbox state.
6710 2000-12-04 Jody Goldberg <jgoldberg@home.com>
6712 * src/sheet-object.c (sheet_relocate_objects) : Remember to move the
6713 object to the new sheet, not just the views.
6714 (sheet_object_position) : Off by one. Use < not <=
6716 2000-12-04 Jody Goldberg <jgoldberg@home.com>
6718 * src/sheet.c (sheet_{insert,delete}_{cols,rows}) : Call
6719 sheet_relocate_objects.
6720 (sheet_move_range) : Ditto.
6722 * src/sheet-object.c (sheet_object_unrealize) : restore this routine.
6723 (sheet_object_destroy) : Use it here.
6724 (sheet_object_position) : renamed from sheet_object_reposition.
6725 (sheet_relocate_objects) : new routine. Only handles current anchor
6726 format. Will need to extend this.
6728 * src/item-bar.c (item_bar_event) : Exit object edit mode when a
6729 button presses on the itembar.
6731 2000-12-02 Jody Goldberg <jgoldberg@home.com>
6733 * src/expr.c (cellrange_relocate) : Still not doing the 'right' thing
6734 in all cases. However at least it will no longer create broken
6736 (cellref_relocate) : tweak a bit.
6738 2000-12-01 Michael Meeks <michael@helixcode.com>
6740 * configure.in: check for gb >= 0.0.17
6742 2000-12-02 Jody Goldberg <jgoldberg@home.com>
6744 * src/expr.c (cellrange_relocate) : fix the logic that was broken when
6745 supporting the partial ranges.
6746 (cellref_relocate) : move some of the code here, to decrease
6749 2000-12-02 Jody Goldberg <jgoldberg@home.com>
6751 * src/item-bar.c : Add some debug macros to catch the magic helix
6753 * src/item-cursor.c : Ditto.
6754 * src/item-grid.c : Ditto.
6755 * src/sheet-control-gui.c : Ditto.
6757 2000-12-01 Jody Goldberg <jgoldberg@home.com>
6759 * src/functions/fn-lookup.c (gnumeric_hlookup) : fix cut-n-paste-o.
6761 2000-12-01 Jody Goldberg <jgoldberg@home.com>
6763 * src/item-cursor.c (item_cursor_drag_event) : Ignore press events fro
6764 drag cursors. And ignore release events for buttons other than the
6765 one that started the drag.
6766 s/prepared_to_drag/drag_button/
6767 (item_cursor_set_arg) : Add 'Button' arg
6768 (item_cursor_class_init) : Ditto.
6770 2000-12-01 Jody Goldberg <jgoldberg@home.com>
6772 * src/sheet-control-gui.c (scg_object_stop_editing) : fix warning.
6775 2000-12-01 Jody Goldberg <jgoldberg@home.com>
6777 * src/sheet-object.c (sheet_object_position_pts) : new function.
6778 (sheet_object_position_pixels) : new function.
6780 2000-11-30 Jody Goldberg <jgoldberg@home.com>
6782 * src/xml-io.c : Begin moving the sheet object xml io into virtuals.
6784 2000-11-30 Jody Goldberg <jgoldberg@home.com>
6786 * src/sheet.c : Add SHEET_FOREACH_CONTROL to help abstract the
6787 implementation of controls and simplify changes later.
6788 (sheet_set_zoom_factor) : reposition objects not just comments.
6789 (sheet_get_objects) : New function.
6791 2000-11-30 Jody Goldberg <jgoldberg@home.com>
6793 * src/sheet-object.c : Move most (not yet all) of the GUI aspects into
6794 the sheet control. Revamp the semantics of the sheet-object
6796 new_view : now handles the sizing and realizing of objects.
6797 Add support for persistance here.
6798 Delete get/set bound.
6800 * src/sheet-object-container.c : convert to new object management
6802 * src/sheet-object-graphic.c : Ditto.
6803 * src/sheet-object-item.c : Ditto.
6804 * src/sheet-object-widget.c : Ditto.
6806 * src/sheet-object-bonobo.c (sheet_object_bonobo_construct) :
6807 sheet_object_construct now takes a default size.
6809 2000-11-30 Jody Goldberg <jgoldberg@home.com>
6811 * src/sheet-control-gui.c : Move cell comment and sheet object
6812 placement routines here. Rather than scattering them in non-gui
6815 2000-11-30 Jody Goldberg <jgoldberg@home.com>
6817 * src/print.c (print_object_view_position) : Convert object position
6820 * src/selection.c (sheet_selection_redraw) : simplify.
6822 2000-11-30 Jody Goldberg <jgoldberg@home.com>
6824 * src/gnumeric-sheet.c (gnumeric_sheet_key_mode_object) : SheetObject
6825 editing is now specific to the SheetControl.
6826 (gnumeric_sheet_key_press) : Ditto.
6827 (gnumeric_sheet_key_release) : Ditto.
6829 * src/selection.c (sheet_is_cell_selected) : Ditto.
6830 (sheet_col_selection_type) : Ditto.
6831 (sheet_row_selection_type) : Ditto.
6833 * src/item-bar.c (item_bar_draw) : Ditto.
6835 * src/item-grid.c (item_grid_draw_background) : Ditto.
6836 (item_grid_button_1) : Ditto.
6837 (item_grid_event) : Ditto.
6838 (cb_obj_create_motion) : Move the object creation GUI here.
6839 (cb_obj_create_button_release) : and add partial support for
6841 (sheet_object_begin_creation) : Ditto.
6843 2000-11-30 Jody Goldberg <jgoldberg@home.com>
6845 * src/cell.c (cell_copy) : Comments are no longer associated directly
6847 * src/clipboard.c (paste_cell) : Ditto.
6848 (clipboard_release) : Ditto.
6850 * src/bonobo-io.c (gnumeric_bonobo_obj_read) : No need to set bounds
6851 or realize the object here. That is handed at a higher level.
6853 2000-11-30 Jody Goldberg <jgoldberg@home.com>
6855 * src/number-match.c (compute_value) : Use strtol to simplify things.
6857 * src/func.c (tokenized_help_new) : translate the help text.
6859 2000-11-27 Jody Goldberg <jgoldberg@home.com>
6861 * src/formats.c (currency_date_format_init) : quote the currency
6864 2000-11-30 Almer S. Tigelaar <almer1@dds.nl>
6866 * src/preview-grid-controller.c (preview_grid_controller_new) :
6867 Make the selection rectangle fatter and position it slightly better.
6869 2000-11-29 Morten Welinder <terra@diku.dk>
6871 * src/xml-io.c (xml_sheet_write): Initialise closure's rle_count
6873 (natural_order_cmp): Fix major brown-bag in ordering.
6875 2000-11-27 Morten Welinder <terra@diku.dk>
6877 * src/analysis-tools.c (anova_single_factor_tool): Apply the rest
6878 of Christensens' patch.
6880 2000-11-27 Jody Goldberg <jgoldberg@home.com>
6882 * src/workbook-view.c (workbook_view_init) : Init the format feedback.
6883 But don't bother displaying. We don't have any controls yet.
6885 * configure.in (have_gda) : init to false.
6887 2000-11-27 Michael Meeks <michael@helixcode.com>
6889 * src/embeddable-grid.c (EmbeddableGridFactory_init): upd.
6891 * Makefile.am (oaf_DATA): upd to GNOME_Gnumeric.oafinfo
6893 * GNOME_Gnumeric.oafinfo: upd.
6895 2000-11-24 Jon K Hellan <hellan@acm.org>
6897 * src/file.c (do_save_as): Remember name with extension, so
6898 subsequent saves are done to the correct file.
6900 * src/workbook.c (workbook_set_saveinfo): Remove redundant setting
6903 2000-11-24 Jody Goldberg <jgoldberg@home.com>
6905 * src/print-cell.c (print_cell) : bubble the sizing code further up.
6906 src/cell-draw.c (cell_draw) : ditto. Move towards a better api that
6907 will pass in the bounding box rather than all the parameters needed
6908 to generate it in different circumstances.
6910 2000-11-23 Jody Goldberg <jgoldberg@home.com>
6912 * src/print-cell.c (print_cell) : until printing of the grid is synced
6913 with drawing a grid, disable the tests for width, height.
6915 * src/expr.c (cellrange_relocate) : Use simple heuristic to help
6916 diffentiate the 'expected' behavior of moving expressions with
6917 range references that are partially contained.
6919 2000-11-22 Morten Welinder <terra@diku.dk>
6921 * src/functions/fn-math.c (gnumeric_sumx2py2): Plug leaks.
6922 (gnumeric_sumxmy2): Plug leaks.
6923 (gnumeric_sumx2my2): Plug leaks.
6925 2000-11-22 Zbigniew Chyla <cyba@gnome.pl>
6927 * src/dialogs/dialog-plugin-manager.c (refresh_right_frame):
6928 Replaced ctime() with strftime() to display translated form of
6929 plugin modification date.
6931 * src/item-bar.c (colrow_tip_setlabel): Translated (Polish)
6932 version of string doesn't fit within "buffer". Dropped static
6933 array and used dynamic memory allocation (g_strdup_printf).
6934 (vertical_scroll_change, horizontal_scroll_change): It fits with
6935 Polish translation but code is similar to the above.
6937 2000-11-22 Zbigniew Chyla <cyba@gnome.pl>
6939 * src/dialogs/summary.glade: Centered "Document Summary
6942 2000-11-21 Morten Welinder <terra@diku.dk>
6944 * src/sheet.c (sheet_new_sheet_view): Remove spurious ref.
6946 * src/stf-parse.c (stf_parse_get_colwidth): Don't overrun buffer.
6948 2000-11-20 Morten Welinder <terra@diku.dk>
6950 * src/gutils.c (gnumeric_usr_dir): Use g_get_home_dir, not just
6951 $HOME. Don't return duplicate slashes.
6953 * src/commands.c (cmd_resize_row_col_redo): Proper undo sizing.
6954 (cmd_sort_redo): Ditto.
6955 (cmd_hide_selection_rows_cols): Ditto.
6956 (cmd_autofill_redo): Ditto.
6958 * gnumeric.spec.in (gal): Require 0.2.99.
6960 * configure.in (gal): Require 0.2.99 (and fix check).
6962 * src/workbook-control-gui.c (workbook_control_gui_ctor_class):
6963 Set undo_redo.truncate.
6964 (wbcg_undo_redo_truncate): New function.
6966 * src/commands.c (command_push_undo): truncate undo information.
6967 (truncate_undo_info): New function.
6968 (cmd_format): Properly size undo information.
6970 2000-11-20 Jody Goldberg <jgoldberg@home.com>
6972 * src/colrow.c (col_row_get_index_list) : Take away my crack pipe.
6974 2000-11-20 Jody Goldberg <jgoldberg@home.com>
6976 * configure.in : Use a more conventional approach to path separators.
6977 * src/gutils.c (gnumeric_usr_dir) : Adjust here.
6978 (gnumeric_sys_data_dir) : and here.
6979 (gnumeric_sys_lib_dir) : and here.
6981 2000-11-20 Jody Goldberg <jgoldberg@home.com>
6983 * src/sheet.c (sheet_clone_selection) : Fix.
6985 * src/item-grid.c (item_grid_draw_merged_range) : If the merged region
6986 is fully selected paint it as such.
6988 * src/selection.c (sheet_is_full_range_selected) : new function.
6989 (sheet_selection_set) : support merged cells.
6991 2000-11-20 Morten Welinder <terra@diku.dk>
6993 * src/sheet.c (sheet_destroy_contents): Eliminate merged regions.
6994 (sheet_destroy): Free data structures for merged regions.
6995 (sheet_new): Activate temporary debugging code on
6996 GNUMERIC_DEBUG_MERGE in environment.
6998 2000-11-19 Jody Goldberg <jgoldberg@home.com>
7000 * src/sheet.c (sheet_region_is_merge_cell) :
7001 (sheet_region_get_merged) :
7002 (sheet_region_unmerge) :
7003 (sheet_region_merge) : implement.
7005 2000-11-19 Jody Goldberg <jgoldberg@home.com>
7007 * src/item-grid.c (item_grid_draw_merged_range) : new function.
7008 This may be clearer if we draw the grid lines after the background.
7009 It does not support borders or selection yet.
7010 (item_grid_draw) : Use it.
7012 2000-11-19 Jody Goldberg <jgoldberg@home.com>
7014 * src/cellspan.c (cell_is_empty) : new utility function.
7015 span calculation is now rather inefficent. We could be smarter if
7016 we had a better representation of spans. For now adding support for
7017 merged cells here would be enough.
7018 (cell_calc_span) : Use it.
7020 * src/cell-draw.c (cell_draw) : decrease dependence on
7021 Cell::{col,row})_info::size_pixels. This is not accurate for merged
7022 cells. More work is needed. I have not converted the multiline
7023 formating yet. The signature of this function sucks.
7024 We should pass in either span or width height, not both.
7026 * src/print-cell.c (print_cell) : Stay consistent with cell_draw.
7027 NOTE : I have not ported over the merged cell support. It seems
7028 pointless until it is working completely for drawing.
7030 2000-11-19 Jody Goldberg <jgoldberg@home.com>
7034 * src/formats.c (currency_symbols) : Add the slovenian tolar.
7036 2000-11-16 Jody Goldberg <jgoldberg@home.com>
7038 * src/sheet-control-gui.c (scg_context_menu) : renamed from
7039 item_grid_popoup_menu and moved here where it makes more sense.
7041 * src/sheet.c (sheet_merge_region) : implement.
7042 (sheet_unnmerge_region) : Ditto.
7043 (sheet_get_merged_regions) : Ditto.
7045 2000-11-18 Jody Goldberg <jgoldberg@home.com>
7047 * configure.in : Bump to 0.60 post release
7050 2000-11-18 Jody Goldberg <jgoldberg@home.com>
7054 2000-11-18 Jody Goldberg <jgoldberg@home.com>
7056 * src/command-context-corba.c (command_context_corba_new) : warning
7059 * src/workbook-control-gui.c (workbook_control_gui_ctor_class) : Init
7060 progress_set in CommandContextClass, and add support for
7061 splits_array at this level.
7063 * src/command-context.c (gnumeric_error_splits_array) : The decision
7064 to use invalid should be done in the implementation.
7066 * src/workbook-control.c (wb_control_progress_set) : delete replicated
7069 2000-11-17 Chema Celoria <chema@celorio.com>
7071 * src/print.c (sheet_print): change to a g_return_val_if_fail
7072 by gmorten's request
7074 2000-11-17 Chema Celorio <chema@celorio.com>
7076 * src/print.c (sheet_print): if gnome-print dialog is NULL,
7077 return. This avoids a crash if there aren't any printers installed.
7079 2000-11-17 Almer S. Tigelaar <almer1@dds.nl>
7081 * src/preview-grid-controller.c, src/preview-grid-controller.h
7082 (preview_grid_controller_new) : Extra selected parameters,
7083 if set a red rectangle will be drawn over the preview to indicate
7086 * src/dialogs/dialog-autoformat.c (previews_load): Adjust so
7087 the selected preview will be drawn in selected state.
7089 2000-11-16 Jody Goldberg <jgoldberg@home.com>
7091 * src/format.c (format_month_before_day) : Add config test.
7092 * configure.in : Implement test here.
7093 * config.h.in : and here.
7095 2000-11-15 Jody Goldberg <jgoldberg@home.com>
7097 * src/sheet.c (sheet_update_only_grid) : split from sheet_update.
7098 (sheet_update) : call sheet_update_only_grid.
7100 2000-11-16 Michael Meeks <michael@helixcode.com>
7102 * src/xml-io.h: add xmlmemory.h
7104 * src/gui-clipboard.c (x_selection_handler): xmlFree
7107 2000-11-16 Morten Welinder <terra@diku.dk>
7109 * plugins/Makefile.am (GDA_DIR): Blank.
7111 2000-11-16 Zbigniew Chyla <cyba@gnome.pl>
7113 * src/sheet-autofill.c: Added support for boolean values (just copy
7116 2000-11-16 Rodrigo Moya <rodrigo@linuxave.net>
7118 * configure.in: added support for conditional compilation of
7119 the GDA (GNOME-DB) plugin
7120 * plugins/gda/*: updated to current GDA code. Does not compile
7123 2000-11-16 Zbigniew Chyla <cyba@gnome.pl>
7125 * src/selection.c, src/dialogs/dialog-cell-sort.c: Marked strings
7128 2000-11-15 Jody Goldberg <jgoldberg@home.com>
7130 * src/workbook-control.c (workbook_control_set_view) : Follow
7131 convention that the manager is set when attached, and not before.
7132 * src/workbook-view.c (wb_view_attach_control) : Ditto. Set the
7133 tile on the new control.
7134 * src/workbook.c (workbook_attach_view) : Ditto.
7136 2000-11-15 Jody Goldberg <jgoldberg@home.com>
7138 * src/command-context-corba.[ch] : This is incorrectly named and used
7139 the wrong way :-( But at least it is compilable. I'll fix this
7142 2000-11-15 Jody Goldberg <jgoldberg@home.com>
7144 * src/colrow.c (col_row_foreach) : Use ColRowSegments
7145 (col_row_restore_sizes) : Ditto.
7146 * src/sheet.c (sheet_{col,row}_add) : Ditto.
7147 (sheet_{col,row}_get_info) : Ditto.
7148 (sheet_{col,row}_get) : Ditto.
7149 (sheet_cell_foreach_range) : Ditto.
7150 (sheet_{col,row}_destroy) : Ditto.
7151 (sheet_regen_adjacent_spans) : Ditto.
7152 (colrow_move) : Ditto.
7153 (sheet_{col,row}_get_distance_pixels) : Ditto.
7154 (sheet_{col,row}_get_distance_pts) : Ditto.
7155 (sheet_{col,row}_set_size_pts) : Ditto.
7157 2000-11-15 Jody Goldberg <jgoldberg@home.com>
7159 s/sheet-view/sheet-control-gui/
7161 * src/Makefile.am : Add command-context-corba.[ch] temporarily
7163 * configure.in : Default to non-bonobo build
7165 2000-11-15 Michael Meeks <michael@helixcode.com>
7167 * gnumeric.oafinfo: rename to ObjectFactory
7169 2000-11-54 John Gotts <jgotts@linuxsavvy.com>
7171 * gnumeric.spec.in: Create a devel RPM. Added some missing files.
7172 Made the build work from either a tar file or CVS.
7174 2000-11-14 Almer S. Tigelaar <almer1@dds.nl>
7176 * src/io-context.h, src/io-context.c
7177 (gnumeric_io_progress_set): New function, calls
7178 upon gnumeric_progress_set to do the job.
7180 2000-11-14 Jody Goldberg <jgoldberg@home.com>
7182 * src/workbook-control-gui.c : Fix warning.
7184 2000-11-13 Jody Goldberg <jgoldberg@home.com>
7186 * configure.in : Bump to 0.59 post release.
7188 2000-11-13 Jody Goldberg <jgoldberg@home.com>
7192 2000-11-13 JP Rosevear <jpr@helixcode.com>
7194 * src/functions/fn-lookup.c (find_bound_walk): Only reverse
7195 direction if we haven't already switched direction once.
7198 2000-11-13 Jody Goldberg <jgoldberg@home.com>
7200 * src/workbook-format-toolbar.c (workbook_feedback_set) : Doh!
7202 2000-11-13 Jody Goldberg <jgoldberg@home.com>
7204 * src/dialogs/dialog-graph-guru.c
7205 (graph_guru_create_vectors_from_range) : small improvement to
7206 vector selection heuristics.
7208 2000-11-12 Jody Goldberg <jgoldberg@home.com>
7210 * src/sheet-object.c (sheet_object_new_view) : Make public.
7212 * src/workbook-control-gui.c (wbcg_sheet_add) : Create views of all
7215 2000-11-12 Almer S. Tigelaar <almer1@dds.nl>
7217 * src/stf-export.c (stf_export_sheet): Use sheet_get_extent
7218 instead of sheet->rows and sheet->cols.
7220 2000-11-12 Jody Goldberg <jgoldberg@home.com>
7222 * src/workbook.c (workbook_sheet_attach) : Use wb_view_sheet_add.
7224 * src/workbook-view.c (wb_view_sheet_add) : new function.
7225 (wb_view_format_feedback) : Ditto.
7226 (wb_view_auto_expr) : Store the display result.
7227 (wb_view_auto_expr_value_display) : renamed
7228 from wb_view_auto_expr_value_set.
7229 (wb_view_destroy) : clear out the new members.
7231 * src/workbook-format-toolbar.c (workbook_feedback_set) : Calculate
7232 the style here. This is transitory. It will eventually move into
7233 the sheet view when that is split.
7235 * src/workbook-control.c (wb_control_sheet_add) : Do this manually
7236 so that if the new sheet is the focus sheet for the view we can
7237 update the various feedback mechanisms.
7238 (workbook_control_sheets_init) : rather than here.
7240 * src/sheet.c (sheet_update) : prepare for having the wb_view handle
7243 * src/Makefile.am : Add missing workbook-control.h
7245 * src/workbook-view.c (wb_view_auto_expr) : When the expression
7246 changes, recalculate.
7248 * src/workbook-control-gui.c (wbcg_auto_expr_value) : Mark as updating
7250 (cb_auto_expr_changed) : test the updating flag here, don't set it.
7252 2000-11-11 Michael Meeks <michael@helixcode.com>
7254 * src/bonobo-io.c (gnumeric_bonobo_obj_write),
7255 (write_stream_to_storage): update unref fns.
7256 (read_stream_from_storage): upd.
7257 (gnumeric_bonobo_obj_read): set the bounds correctly.
7259 * src/xml-io.c (xml_write_sheet_object): NULL the sheet object
7262 2000-11-11 Michael Meeks <michael@helixcode.com>
7264 * src/clipboard.c (apply_paste_oper_to_values): kill warning.
7266 * src/xml-io-autoft.c: remove stale enum.
7268 * src/xml-io.c (xml_check_version): publicized.
7269 (xml_parse_ctx_new_full): add version parameter.
7270 (xml_parse_ctx_new): update.
7272 * src/bonobo-io.c (gnumeric_bonobo_read_workbook): use
7275 * src/bonobo-io.c (gnumeric_bonobo_write_workbook): open the
7276 stream with the correct permissions.
7277 (gnumeric_bonobo_io_probe): update to like directories too.
7278 (gnumeric_bonobo_io_init): register for '.efs'
7279 (gnumeric_bonobo_read_workbook): beef up exception reporting.
7281 2000-11-11 Michael Meeks <michael@helixcode.com>
7283 * src/gnumeric.xml: fiddle, lots of strange mangling, needs HEAD
7284 bonobo to look at all good.
7286 * src/xml-io.c (xml_write_sheet_object): free the node nicely in
7289 2000-11-11 Michael Meeks <michael@helixcode.com>
7291 * configure.in (LIBS): add gnome-config --cflags idl to the default
7294 2000-11-11 Jody Goldberg <jgoldberg@home.com>
7296 * src/workbook-control-gui.c : Fix typos in the accelerator selections
7299 * src/gnumeric.xml : Add entries for new shared/unshared views.
7301 * src/style.c (font_init) : Use the correct scale.
7303 * src/value.c (value_get_default_halign) : Renamed and moved from here
7304 * src/cell.c (cell_default_halign) : to here. Added support for
7305 displaying formulas.
7307 * src/print-cell.c (print_cell) : only draw hash marks for numbers
7308 not when displaying formulas.
7309 * src/cell-draw.c (cell_draw) : Ditto.
7310 * src/cellspan.c (cell_calc_span) : Ditto.
7311 * src/rendered-value.c (rendered_value_calc_size_ext) : Ditto.
7313 2000-11-11 Jody Goldberg <jgoldberg@home.com>
7315 Patch from Tyler & James Christensen
7316 * src/analysis-tools.c (anova_single_factor_tool) : Correct handling
7317 of variables stored in rows rather than columns.
7319 2000-11-11 Zbigniew Chyla <cyba@gnome.pl>
7321 * src/dependent.c (dependent_list_filter): Correct "for" loop
7324 2000-11-10 Jody Goldberg <jgoldberg@home.com>
7326 * src/sheet-object.c (sheet_object_new_view) : Store the SheetObject
7327 and SheetView as object_data.
7328 (cb_sheet_object_configure) : Pass the SheetView to configuration
7330 (sheet_object_populate_menu) : Pass the CanvasItem it has the useful
7331 property of having the associated view and sheet object as user data.
7332 This makes it handy for use in callbacks.
7333 (display_object_menu) : signature change.
7334 (control_point_handle_event) : changes to display_menu_object.
7335 (sheet_object_canvas_event) : Ditto.
7337 * src/sheet-object-widget.c (sheet_widget_checkbox_user_config) :
7338 signature change. This should get things working again.
7340 * src/sheet-object-bonobo.c (sheet_object_bonobo_populate_menu) :
7343 2000-11-10 Jody Goldberg <jgoldberg@home.com>
7344 Patch from Juan Pablo Mendoza <pablo_juan@yahoo.com>
7346 * sheet-view.c (sheet_view_comment_create_marke): Memory leak.
7348 2000-11-10 Jody Goldberg <jgoldberg@home.com>
7350 * src/workbook-format-toolbar.c (workbook_format_toolbutton_update) :
7351 Minor optimization to decrease flicker.
7353 * src/sheet.c (sheet_cell_calc_span) : Clarify the semantics of
7355 (cb_max_cell_width) : If the value used a dynamic format we need to
7356 rerender ignoring the current width.
7358 * src/rendered-value.c (rendered_value_new) : renamed from
7359 rendered_value_new_ext and delete the old rendered_value_new.
7360 Extend slightly to flag whether or not to handle dynamic formats.
7362 * src/render-ascii.c (cell_region_render_ascii) : Handle the style
7365 * src/cell.c (cell_eval_content) : We need to manually render
7366 the value here, but no longer need to calculate the size
7367 separately. That is done automatically in the render.
7368 (cell_render_value) : Handle style localy, and calculate the size.
7370 2000-11-09 Jody Goldberg <jgoldberg@home.com>
7372 * src/workbook-control-gui.c (workbook_control_gui_init) : move the
7374 * src/workbook.c : from here.
7376 2000-11-09 Morten Welinder <terra@diku.dk>
7378 * src/border.c (style_border_unref): Take border out of hash table
7379 before we destroy the hashed fields.
7381 2000-11-09 Jody Goldberg <jgoldberg@home.com>
7383 * src/workbook-view.c (workbook_view_init) : Add prototype.
7385 * src/workbook-control-gui.c (cb_sheet_change_name) : Make static to
7387 * src/workbook-edit.c (workbook_edit_set_sensitive) : Ditto.
7389 2000-11-09 Morten Welinder <terra@diku.dk>
7391 * src/gnumeric-sheet.h (GNUMERIC_SHEET_FACTOR_X,
7392 GNUMERIC_SHEET_FACTOR_Y): 1000000 and 2000000. Still ugly, but
7395 * src/sheet-view.c (sheet_view_set_zoom_factor): Don't hard-code
7396 scroll region sizes multiple places.
7398 * src/gnumeric-sheet.c (gnumeric_sheet_new): Ditto.
7400 * src/sheet-control.c (sheet_control_set_zoom_factor): Ditto.
7402 * src/sheet.h (SHEET_MAX_ROWS, SHEET_MAX_COLS): Remove duplicate
7405 2000-11-09 Jody Goldberg <jgoldberg@home.com>
7407 * src/stf.c (stf_read_workbook) : We are passing an IOContext.
7409 2000-11-09 Jody Goldberg <jgoldberg@home.com>
7411 * src/item-cursor.c (item_cursor_selection_event) : Make
7412 the double click handler smarter. It now handles empties
7413 and checks both sides of a row/col. Left/top is perfered to
7416 2000-11-08 Jody Goldberg <jgoldberg@home.com>
7418 * src/item-cursor.c (item_cursor_init) : Initialize fully, add
7419 prepared_to_drag_flag.
7420 (item_cursor_selection_event) : Move most of the state change
7421 associated with BUTTON_PRESS into MOTION_NOTIFY. And use the
7422 prepared_to_drag_flag flag to indicate a requirement to initiate a
7423 drag. Move most of the double click handling here. The resone for
7424 these changes was that there was a race condition in the old
7425 version. We were creating a new item cursor when we did a button
7426 press. It started in exactly the same position as the current
7427 cursor. 2BUTTON_PRESS were sometimes being sent to the new cusor
7428 and sometimes showing up as PRESS events on the old with no RELEASE.
7429 This patch attempts to delay creating the new drag cursor until we
7430 are sure this is not a double click so that the proper event
7431 sequence is sent to the main cursor.
7433 * src/border.c (style_border_unref) : Unref the colour.
7434 (style_border_fetch) : unref the colour when needed.
7436 2000-11-08 Jody Goldberg <jgoldberg@home.com>
7438 * src/sheet.c (sheet_is_region_empty) : New function.
7440 2000-11-08 Morten Welinder <terra@diku.dk>
7442 * src/complex.c (complex_from_string): Handle overflow.
7444 * src/number-match.c (format_match_simple): Don't depend on
7445 incoming errno not to be ERANGE.
7447 * src/sheet-autofill.c (string_has_number): Ditto.
7449 * src/parser.y (yylex): Ditto.
7451 * src/value.c (value_new_from_string): Ditto. Also take care of
7454 2000-11-08 Jody Goldberg <jgoldberg@home.com>
7456 * src/clipboard.c (apply_paste_oper_to_values) : Rewrite to use
7458 (paste_cell_with_operation) : rework to handle pasting as_value
7460 (paste_link) : This is broken. FIXME.
7461 (paste_cell) : Move the check for pasting content or as_value to the
7464 * src/cell.c (cell_make_value) : Unlink expressions if necessary.
7466 * src/sheet.c (sheet_cell_set_expr) : flag that content changed.
7468 * src/dependent.c (dependent_queue_recalc_list) : Add some safety.
7470 * src/item-cursor.c (item_cursor_event) : clicking on an anted cursor
7471 is almost the same as clicking on a selection cursor.
7473 * src/expr-name.c (expr_name_add) : It is legal to add names that are
7474 available in other scopes as long as the new scope does not contiain
7477 2000-11-06 Jody Goldberg <jgoldberg@home.com>
7479 * src/sheet-autofill.c (autofill_cell) : Use cell_set_value directly.
7480 No need to do depends or respaning for each cell.
7482 * src/commands.c (cmd_autofill_redo) : When we can do it here, for the
7484 (cmd_area_set_text_redo) : Add the missing depend update here.
7486 * src/sheet.c (sheet_cell_set_value) : Render if required.
7488 2000-11-06 Almer S. Tigelaar <almer1@dds.nl>
7490 * src/gui-clipboard.c:
7491 (x_selection_to_cell_region): Make error message more descriptive.
7494 (stf_read_workbook): Ditto.
7496 2000-11-06 Almer S. Tigelaar <almer1@dds.nl>
7498 Fix bug #21674. (Fix will kick in once the version number of the
7499 XML format is bumped to GNUM_XML_V5)
7501 * src/print-info.c (print_info_new): Add extra commenting.
7504 (xml_write_print_repeat_range): New function, for saving a repeat range.
7505 (xml_read_print_repeat_range): New function, for loading a repeat range.
7506 (xml_write_print_info): Save the row repeat and col repeat range using
7507 xml_write_print_repeat_range.
7508 (xml_read_print_info): Read col and row repeat range if file format
7509 version > GNUM_XML_V4 using xml_read_print_repeat_range.
7511 2000-11-06 Jody Goldberg <jgoldberg@home.com>
7513 * src/workbook.c (workbook_sheet_detach) : remove unused parm.
7514 Be more paranoid about focus handling.
7516 * configure.in : fix typo.
7518 2000-11-05 Jody Goldberg <jgoldberg@home.com>
7520 * src/sheet.c (cb_set_cell_content) : Use cell_set_value.
7521 (sheet_range_set_text) : remove need for entered_text.
7523 * src/xml-io.c (xml_read_cell) : Remove 'General' hack.
7525 * src/dialogs/dialog-cell-format.c (draw_format_preview) : remove
7528 * src/rendered-value.c (rendered_value_new_ext) : No need for
7529 entered_text. Use format_value in place of value_as_string.
7531 * src/format.c (format_value) : No need for entered_text.
7532 Be careful to always set the colour. This may need to be tuned
7533 if we enter '$10' and use a display format of @ what should be
7534 displayed ? 10 or $10 ? We may need to pass in the parse format.
7536 * src/cell.c (cell_cleanout) : Remove entered_text.
7537 (cell_copy) : Ditto.
7538 (cell_set_text) : Ditto.
7539 (cell_set_value) : Ditto, do not render value here.
7540 (cell_set_text_and_value) : Delete.
7541 (cell_set_expr_and_value) : Remove entered_text, and add format
7543 (cell_set_expr_internal) : No need to manually unref the old expr.
7544 That was already done in cleanout.
7545 (cell_make_value) : remove entered_text.
7547 * src/rendered-value.c (cell_get_entered_text) : Use the stored parse
7548 format and format_value to regenerate the entered text from a value.
7550 2000-11-04 Jody Goldberg <jgoldberg@home.com>
7552 * src/sheet-view.c (sheet_view_{col,row}_size_changed) : Only resize
7553 all columns if the column that changed is part of the selection.
7555 * src/selection.c (sheet_selection_full_{cols, rows}) : flag whether
7556 the selection contains the requested col.
7558 2000-11-04 Jody Goldberg <jgoldberg@home.com>
7560 * src/format-template.c (format_template_apply_to_sheet_regions) : No
7561 need to request a redraw.
7562 (cb_format_sheet_style) : Use sheet_range_apply_style because it
7563 requests a redraw and handles respaning/spacing when necessary.
7565 2000-11-03 Jody Goldberg <jgoldberg@home.com>
7567 * src/commands.c (cmd_paste_copy_undo) : Clear any operations when
7568 storing the undo info for paste_copy. There is no longer any need
7569 for the operations. We are storing the image.
7571 * src/clipboard.c (clipboard_prepend_cell) : Be safe and init the
7574 2000-11-03 Jody Goldberg <jgoldberg@home.com>
7576 * configure.in : Update the GAL requirement.
7578 2000-11-03 Jody Goldberg <jgoldberg@home.com>
7580 * src/clipboard.c (clipboard_paste_region) : Optimize the styles for
7581 the entire target region in one swoop, rather than each tile
7582 individually. This fixes the reported problem symptom. I do not
7583 have a definite reason why it was failing before. This may just be
7584 sweeping it under the rug.
7586 * src/xml-io.c (xml_workbook_write) : Bump the xml version.
7588 * src/format.c (format_value) : A string value takes precedence over
7591 2000-11-03 Jody Goldberg <jgoldberg@home.com>
7593 * src/dialogs/analysis-tools.glade : Rename 'Alpha' to '1 - Alpha'
7595 * src/complete-sheet.c (text_matches) : Only use values that are strings
7596 do not bother with 'entered_text'
7597 (complete_sheet_search_iteration) : Adjust the calls to text_matches.
7599 * src/dialogs/dialog-cell-format.c (fmt_dialog_init_format_page) : Be
7600 careful to use the non-localized version of the format internally.
7602 * src/cellspan.c (cell_calc_span) : Ignore hidden columns.
7604 * src/colrow.c (col_row_set_visibility_list) : regen the spans outside
7605 the region which changes visibility.
7607 * src/sheet.c (sheet_regen_adjacent_spans) : Split this out
7608 from sheet_clear_region.
7610 2000-11-02 Jody Goldberg <jgoldberg@home.com>
7612 * src/sheet-autofill.c (string_has_number) : thou shalt not use atoi
7613 for it does not check for oeverflow.
7615 2000-11-02 Jody Goldberg <jgoldberg@home.com>
7617 * src/print-cell.c (print_cell_range) : Set the printed flag whenever
7618 there is a valid cell.
7620 * src/sheet-autofill.c (autofill_create_fill_items) : Do not look up
7622 (fill_item_new) : lookup the style and cell here.
7623 (sheet_autofill_dir) : Always apply the style.
7624 (fill_item_destroy) : release the style.
7626 2000-11-02 JP Rosevear <jpr@helixcode.com>
7628 * src/xml-io.c (xml_read_attributes): Don't check for a workbook,
7629 this is redundant and not even true any more.
7630 (xml_workbook_read): Only read the attributes if the workbook is
7633 2000-11-02 Jody Goldberg <jgoldberg@home.com>
7635 * src/rendered-value.c (rendered_value_new_ext) : Any form of General
7636 will need a width. Default to full precision.
7638 * src/cell.c (cell_set_value) : Do not assign optional formats of General
7640 2000-11-02 Jody Goldberg <jgoldberg@home.com>
7642 * src/workbook-control-gui.c (cb_file_new) : We need to create a
7644 (workbook_close_if_user_permits) : Do not attempt to finsihed editing
7645 here. This is called in a loop from cb_file_quit.
7646 (wbcg_close_control) : stop editing here.
7647 (cb_file_quit) : and stop editing here before closing and workbooks.
7648 While closing workbooks save the calling working for last so than
7649 can save the current view rather than guessing and using the first.
7651 2000-11-02 Almer S. Tigelaar <almer1@dds.nl>
7653 * src/dialog-autoformat.c:
7654 (templates_load): Also apply filtering to newly loaded templates.
7655 (dialog_autoformat): Don't call format_template_apply_to_sheet_regions,
7656 pushing the undo stuff (cmd_autoformat) already does this anyway.
7658 * src/format-template.c: Fix bug #30413
7659 (format_template_range_check): New, checks if the target range
7660 is wide enough to apply the format template to.
7661 (format_template_apply_to_sheet_regions): Use format_template_range_check
7662 to check the ranges. Display an error and abort when a range is invalid.
7663 (format_template_recalc_hash): Idem, but don't display an error but a
7664 warning, as no such error is supposed to happen here.
7666 * src/format-template.c: Fix bug #30419
7667 (format_template_filter_style): Add COLOR_BACK to pattern filtering.
7668 (format_template_filter_style): Correct to not always replace
7669 unset elements with default elements.
7670 (cb_format_hash_style): call format_template_filter_style with
7671 default element replacing.
7672 (cb_format_sheet_style): call format_template_filter_style without
7673 default element replacing.
7674 (cb_format_sheet_border): Idem.
7676 2000-11-02 Michael Meeks <michael@helixcode.com>
7678 * configure.in: Require bonobo-0.27+
7680 2000-11-02 Michael Meeks <michael@helixcode.com>
7682 * The big api rename ...
7684 2000-11-02 Michael Meeks <michael@helixcode.com>
7686 * configure.in: bump gb requirement to gb-0.0.15
7688 2000-11-02 Jody Goldberg <jgoldberg@home.com>
7690 * src/sheet.c (sheet_new_sheet_view) : Set the cursor when the sheet
7693 2000-11-01 Jody Goldberg <jgoldberg@home.com>
7695 * src/commands.c (cmd_clear_redo) : reverse the content list to keep
7696 it in sync with the range list.
7698 2000-11-01 Jody Goldberg <jgoldberg@home.com>
7700 * src/xml-io.c (xml_read_cell) : Default the parse format to General.
7701 Eventually we can simply cell_set_value to not guess that the
7702 display format == the parse format. However, that will require
7703 changing all of the importers. For now we can cheat, and supply
7704 General as the format.
7706 * src/functions/fn-string.c (gnumeric_dollar) : use string_get_nocopy.
7708 2000-11-01 Jody Goldberg <jgoldberg@home.com>
7710 * src/expr.c (cellref_relocate) : inside is always calculatd based on
7711 the source sheet. eg Sheet1:A1 = '=A2' and we are moving A1:A2
7712 from Sheet1 -> Sheet2. The reference to A2 should be considered
7713 'inside'. References to Sheet2!A2 have already been #REF!ed.
7715 * src/commands.c (cmd_paste_cut_redo) : Use range_check_sanity.
7717 * src/sheet.c (sheet_cell_insert) : Render if necessary.
7718 (sheet_move_range) : Extra care is only necessary if the source and
7719 target sheets are the same. When they are different we should just
7720 invalidate all references to the target range.
7722 2000-11-02 Jon K Hellan <hellan@acm.org>
7724 * src/workbook.c (workbook_history_update): Fix test to avoid
7725 changing an already correct history.
7726 (workbook_destroy): Don't free wb->filename until we're through
7729 2000-11-01 Jody Goldberg <jgoldberg@home.com>
7731 * src/gnumeric-sheet.c (selection_insert_selection_string) :
7732 Set the position to where we expect it to be.
7733 (gnumeric_sheet_key_mode_sheet) : Only call sheet_update if we are not editing.
7735 2000-11-01 Jody Goldberg <jgoldberg@home.com>
7737 * src/sheet.c (sheet_name_quote) : names with parethesis require quotes.
7739 2000-11-01 Jody Goldberg <jgoldberg@home.com>
7741 * src/workbook-edit.c (workbook_finish_editing) : Restore the focus
7743 * src/workbook-control-gui.c
7744 (cb_cancel_input, cb_accept_input) : rather than here or here.
7746 2000-11-01 Jody Goldberg <jgoldberg@home.com>
7748 * */*.[ch] : s/SheetView::sheet_view/SheetView::canvas/
7749 This has been bugging me for months.
7751 * src/gnumeric-sheet.c (move_cursor) : stop the edit at this level
7752 rather than in sheet_cursor_set.
7753 (gnumeric_sheet_key_mode_sheet) : Use move_cursor.
7755 2000-11-01 Jody Goldberg <jgoldberg@home.com>
7757 * src/ranges.c (range_translate) : Split sanity check into new function.
7758 (range_check_sanity) : here.
7760 * src/xml-io.c (xml_read_range) : Use it.
7762 2000-11-01 Jody Goldberg <jgoldberg@home.com>
7764 * src/sheet.c (sheet_new) : Be mroe fine grained about the changes to
7766 (sheet_flag_status_update_cell) : Only content and format have changed.
7767 (sheet_flag_status_update_range) : handle the new flags.
7768 (sheet_flag_format_update_range) : new function.
7769 (sheet_update_editpos) : delete and split up.
7770 (sheet_update) : Do each update separately. NOTE : this is broken.
7771 All of these flags should be at the View level.
7773 2000-11-01 Jody Goldberg <jgoldberg@home.com>
7775 * src/selection.c (sheet_selection_copy) : pass a workbookcontrol.
7776 (sheet_selection_cut) : Ditto.
7778 * src/commands.c (cmd_format_undo) : flag the format change.
7779 (cmd_format_redo) : Ditto.
7781 * src/workbook-control.h (wb_control_claim_selection) : new virtual.
7782 * src/application.c (application_set_selected_sheet) : Used here.
7783 (application_clipboard_copy) : Take a WorkbookControl.
7784 (application_clipboard_cut) : Ditto.
7786 * src/workbook-control-gui.c (wbcg_paste_from_selection) : new
7788 (workbook_control_gui_ctor_class) : register it.
7790 2000-11-01 Jody Goldberg <jgoldberg@home.com>
7792 * src/print-cell.c (print_cell_range) : We are only outputing
7793 something in the case of a blank cell if the format is visible.
7795 2000-11-01 Almer S. Tigelaar <almer1@dds.nl>
7797 * src/dialogs/dialog-stf.glade:
7800 2000-11-01 Almer S. Tigelaar <almer1@dds.nl>
7803 (print_cell_range): Fix #29442, if a cell's background
7804 is 'printed' this also counts as a 'printed cell'
7806 2000-11-01 Almer S. Tigelaar <almer1@dds.nl>
7808 * src/dialogs/dialog-autoformat.c:
7809 (dialog_autoformat): Kill memory leak, we were not freeing
7810 the list of acquired selection ranges.
7812 2000-10-31 Jody Goldberg <jgoldberg@home.com>
7814 * src/commands.c (cmd_set_text_undo) : Use sheet_clear_region to
7815 ensure that spans get regenerated in neighbouring cells.
7816 (cmd_set_date_time_undo) : Ditto.
7818 2000-10-31 Jody Goldberg <jgoldberg@home.com>
7820 * src/number-match.c (format_create_regexp) : Fix typo in regexp.
7821 Be careful to only match 1 or more digits as a number.
7823 2000-10-31 Morten Welinder <terra@diku.dk>
7825 * src/parser.y (unregister_allocation): plug leak.
7826 ("line = error"): deallocate the result, just in case the parser
7827 discovers the error after reducing the regular line production.
7828 (gnumeric_expr_parser): Initialise *parser_result.
7830 2000-10-31 Jody Goldberg <jgoldberg@home.com>
7832 * src/commands.c (cmd_ins_del_row_col_undo) : Correct target range.
7834 2000-11-01 Michael Meeks <michael@helixcode.com>
7836 * src/command-context-corba.[ch]: privatize the command context.
7838 2000-10-31 Jody Goldberg <jgoldberg@home.com>
7840 * src/cmd-edit.c (cmd_paste) : change the selection when pasting.
7841 (cmd_shift_{rows,cols}) : Do not change the selection when pasting.
7843 * src/commands.c (cmd_paste_cut_{undo,redo}) : Only select the target
7845 (cmd_paste_cut) : new argument.
7847 2000-10-31 Jody Goldberg <jgoldberg@home.com>
7849 * src/value.c (value_new_from_string) : Reset errno on over/underflow.
7850 * src/number-match.c (format_match_simple) : Ditto.
7852 * src/parser.y (yylex) : reset errno in the event of over/underflow.
7853 test for 'e' as an indicator of flaoting point numbers.
7855 2000-10-31 Jody Goldberg <jgoldberg@home.com>
7857 * src/application.c (application_init) : Register a shrunken version
7858 of the print preview.
7860 * src/workbook-control-gui.c (workbook_menu_file) : Use the new
7861 shrunken print preview icon.
7863 2000-10-31 Jody Goldberg <jgoldberg@home.com>
7865 * src/workbook-control-gui.c (cb_cancel_input) : renamed from
7866 cancel_input, and return focus to the sheet.
7867 (cb_accept_input) : renamed from accept_input, and return focus
7870 2000-10-31 Jody Goldberg <jgoldberg@home.com>
7872 * src/item-grid.c (item_grid_popup_menu) : Use the MENU versions of
7875 2000-10-31 Morten Welinder <terra@diku.dk>
7877 * src/analysis-tools.c (get_data_groupped_by_columns): Properly
7878 offset col. Constify.
7879 (get_data_groupped_by_rows): Properly offset row. Constify.
7881 2000-10-31 Jon K Hellan <hellan@acm.org>
7883 * src/io-context.c (gnumeric_io_error_system): Added it.
7885 2000-10-31 Jody Goldberg <jgoldberg@home.com>
7887 * src/workbook-view.c (wb_view_auto_expr) : Set LC_MONETARY and
7889 * src/xml-io.c (xml_workbook_write) : Ditto.
7890 (xml_workbook_read) : Ditto.
7892 2000-10-31 Jody Goldberg <jgoldberg@home.com>
7894 * src/dialogs/*.[ch] : WorkbookControlGUI is now required for gui
7895 operations. A WorkbookView is required to know which sheet is the
7898 * src/xml-io.c : We now load/save WorkbookViews.
7900 * src/xml-io-autoft.c : Adjust to signature changes.
7902 * src/workbook.c : Split the View into WorkbookView.
7903 Abstract the Controler interface, and move the GUI specific
7904 implementation of the Controler into WorkbookControlGUI.
7906 * src/workbook-view.c : Complete rewrite with correct semantics.
7908 * src/workbook-private.h : Move all the GUI specific stuff into
7909 WorkbookControlGUI were it belongs.
7911 * src/workbook-private.c (workbook_private_class_init) : Fix typo.
7913 * src/workbook-edit.c : These are now WorkbookControlGUI specific.
7914 We should rename the functions eventually.
7915 * src/workbook-format-toolbar.c : Ditto.
7916 * src/workbook-object-toolbar.c : Ditto.
7918 * src/workbook-cmd-format.c : Adjust to signature changes.
7919 and use WorkbookControlGUI were necessary.
7921 * src/style.c (style_font_new_from) : Delete dead code.
7923 * src/solver-lp.c : Adjust to signature changes.
7924 * src/sort.c : Ditto.
7925 * src/stf.c : Ditto. Make dialog conditional on gui-ness.
7927 * src/sheet.c (sheet_new_sheet_view) : IS_SHEET checks for NULL.
7928 (sheet_detach_sheet_view) : renamed from sheet_destroy_sheet_view
7929 and only take a SheetView as argument.
7930 (sheet_new) : Do not create a view by default.
7931 (sheet_update_zoom_controls) : foreach control.
7932 (sheet_update_editpos) : ditto.
7933 (sheet_update) : handle multiple views and controls.
7935 * src/sheet-view.c : Commands take WorkbookControls rather than
7938 * src/sheet-object-widget.c : Most things take WorkbookControlGUI
7939 rather than Workbooks.
7941 * src/sheet-object-container.c (sheet_object_container_new_view) :
7942 Use the uic from the WorkbookControlGUI.
7944 * src/sheet-control.c : New file. Unused so far.
7945 cp sheet-view.c sheet-control.c
7946 s/SheetView/SheetControl/
7948 * src/print.c : Make the GUI dependency explicit.
7949 At some point the setup dialog should be split out of here.
7951 * src/main.c (gnumeric_main) : Explicitly create a WorkbookControlGUI
7952 only adding sheets if nothing was loaded. Improve handing of exit
7953 request while loading.
7955 * src/item-grid.c (item_grid_draw) : Filter the edit cell from here
7956 because we know which control to use.
7957 (context_menu_hander) : Switch to WorkbookControlGUI.
7958 (item_grid_popup_menu) : Ditto.
7960 * src/item-edit.c : Everything takes a WorkbookControlGUI inplace of a
7963 * src/item-cursor.c (item_cursor_target_region_ok) : dialog_run takes
7964 a WorkbookControlGUI.
7965 (item_cursor_do_action) : All the commands take WorkbookControls.
7967 * src/item-bar.c (item_bar_event) : item_grid_popup_menu takes a
7970 * src/history.c : Take WorkbookControlGUI.
7971 Update all controls for each workbook.
7973 * src/gui-clipboard.c : Use 'unsigned char'
7975 * src/gnumeric.xml : More work to split commands from layout.
7977 * src/gnumeric-util.c (gnumeric_no_modify_array_notice) : Delete.
7978 (gnumeric_notice) : Take a WorkbookControlGUI.
7979 (gnumeric_wb_dialog_run) : Ditto.
7980 (gnumeric_dialog_run) : Ditto.
7981 (gnumeric_dialog_show) : Ditto.
7982 (gnumeric_set_transient) : Ditto.
7983 (gnumeric_glade_xml_new) : Ditto.
7984 (gnumeric_non_modal_dialog) : Ditto.
7985 (gnumeric_inject_widget_into_bonoboui) : Ditto.
7987 * src/gnumeric-sheet.c : SheetView now has a WorkbookControlGUI member
7988 to keep track of which control it is associated with. Use it.
7990 * src/file.c : Adjust to lots of signature changes.
7991 We now load/save WorkbookView rather than Workbook.
7992 Add a placeholder struct IOContext so that we can consider doing
7993 smarter import/export and dealing with warnings and missing things
7996 * src/eval.c (workbook_recalc_all) : After a recalc update all views.
7998 * src/commands.c (undo_redo_menu_labels) : foreach control.
7999 (command_undo) : ditto.
8000 (command_redo) : ditto.
8001 (command_push_undo) : change signature. The workbookcontrol
8002 now acts as the command context.
8004 * src/cmd-edit.c : Adjust to signature changes.
8006 * src/clipboard.c : split the gui specific X handlers out into a new
8008 * src/gui-clipboard.c : here.
8010 * src/cell-draw.c (cell_draw) : Do not test the sheet for whether or
8011 not to we are editing. That is at the control level. Test it in
8014 * src/bonobo-io.c : FIXME. adjusted to signature changes. Totatly
8015 broken for now. This needs a View rather than a Model and should be
8016 associated with something.
8018 * src/application.c (application_workbook_list_add) : New function.
8019 (application_workbook_list_remove) : New function.
8020 (application_workbook_list) : New function.
8021 (application_clipboard_copy) : foreach control.
8022 (application_clipboard_cut) : foreach control.
8023 (application_clipboard_clear) : foreach control.
8024 (application_workbook_foreach) : renamed from workbook_foreach.
8025 (application_set_selected_sheet) : FIXME. Disabled for now.
8027 * src/about.c (cb_closed) : Associated the flag with the control
8029 (dialog_about) : dialogs are associated with gui-controls.
8031 * src/analysis-tools.c : change all dialog signatures to handle MVC
8034 2000-10-30 Jody Goldberg <jgoldberg@home.com>
8036 * src/Makefile.am : Add new command-context, io-context,
8037 workbook-view, workbook-control, workbook-control-gui files.
8038 Remove old command-context-gui, command-context-corba, and disable
8041 2000-10-29 Jody Goldberg <jgoldberg@home.com>
8043 * idl/gnumeric-graphs.idl : Remove studdly caps. I wish people would
8044 make up their minds.
8046 * idl/Gnumeric.idl : Remove Workbook::show.
8048 2000-10-29 Jody Goldberg <jgoldberg@home.com>
8054 2000-10-30 Morten Welinder <terra@diku.dk>
8056 * src/functions/fn-math.c (gnumeric_sumproduct): Plug leak.
8058 2000-10-29 Almer S. Tigelaar <almer1@dds.nl>
8060 * src/commands.h, src/commands.c:
8061 (cmd_autoformat_undo): New, undo for the autoformat.
8062 (cmd_autoformat_redo): New, redo for the autoformat.
8063 (cmd_autoformat_destroy): Part of undo/redo.
8064 (cmd_autoformat): Idem.
8066 * src/format-template.h: Correct outdated comment.
8068 * src/format-template.h, src/format-template.c:
8069 (format_template_member_clone): New, clone a templatemember.
8070 (format_template_clone): New, clone a format template.
8071 (cb_format_sheet_style): Insert extra checks.
8072 (cb_format_sheet_border): Idem.
8073 (format_template_apply_to_sheet_selection): Renamed.
8074 (format_template_apply_to_sheet_sheet_regions): Modification of the
8075 above function, now accept a separate list of regions.
8077 * src/dialogs/dialog-autoformat.c:
8078 (dialog_autoformat): Modify so it calls upon routines which record
8079 undo/redo information.
8081 2000-10-28 Michael Meeks <michael@helixcode.com>
8083 * configure.in (Configuration): add scary message about Gnome Basic.
8085 2000-10-28 Jon K Hellan <hellan@acm.org>
8087 * src/bonobo-io.c (gnumeric_bonobo_{read|write}_workbook):
8088 Forgot to tell: Also replaced vfs storage, which no longer exists
8089 in Bonobo, with efs, which does. It doesn't seem to work, but
8090 that's a different matter.
8092 2000-10-28 Almer S. Tigelaar <almer1@dds.nl>
8095 (x_selection_to_cell_region): Correct 'char' into 'unsigned char' so the eror
8096 message will display the correct ASCII decimal.
8099 (stf_read_workbook): Idem.
8101 2000-10-28 Jon K Hellan <hellan@acm.org>
8103 * configure.in: Require Bonobo >= 0.26.
8105 * src/bonobo-io.c (write_stream_to_storage,
8106 gnumeric_bonobo_write_workbook): Switch from
8107 Bonobo_Storage_create_stream (which no longer exists) to
8108 Bonobo_Storage_open_stream
8109 (gnumeric_bonobo_obj_write, read_stream_from_storage,
8110 gnumeric_bonobo_write_workbook, gnumeric_bonobo_read_workbook):
8111 Use BONOBO_EX macro for clarity.
8113 2000-10-26 Michael Meeks <michael@helixcode.com>
8115 * configure.in: Depend on gb-0.0.14 (CVS)
8117 2000-10-24 Michael Meeks <michael@helixcode.com>
8119 * src/sheet-object-bonobo.c: Remove #ifdef ENABLE_BONOBO's
8120 (open_cb, sheet_object_bonobo_populate_menu): impl.
8121 (sheet_object_bonobo_class_init): hook in.
8122 (sheet_object_bonobo_load_from_file): upd.
8124 * src/sheet-object-container.c (sheet_object_container_new_file): upd.
8126 2000-10-24 Michael Meeks <michael@helixcode.com>
8128 * src/gnumeric.xml: Start to separate out cmds / widgets, a very
8129 long and tedious job, s/Menu_Open/Open/ etc.
8131 2000-10-22 Jon K Hellan <hellan@acm.org>
8133 * src/workbook-format-toolbar.c (workbook_format_toolbar []): Now
8134 also for non bonobo case: Add button to replace font and size
8135 selectors in vertical mode.
8136 (workbook_format_toolbar_orient): Show/hide font button mentioned
8138 (workbook_create_format_toolbar): Hide font button.
8140 * src/workbook-format-toolbar.h: Update all toolbar item indexes.
8142 2000-10-21 Jody Goldberg <jgoldberg@home.com>
8144 * src/selection.c (selection_to_list) : delete.
8145 (selection_get_ranges) : implement allow_intersection.
8146 (selection_apply) : change the signature of the callback.
8148 2000-10-21 Michael Meeks <michael@helixcode.com>
8150 * src/sheet-object-container.c: include bonobo-object-directory.h
8152 * configure.in: depend on gb >= 0.0.13 and libole >= 0.1.7
8154 * README: update to reflect this.
8156 2000-10-21 Jon K Hellan <hellan@acm.org>
8158 * src/gnumeric.xml: Add tips for toolbar undo and redo. Correct
8159 tip for menu PrintPreview. Add tip to toolbar zoom. Don't
8160 display it when vertical. Add tips to toolbar font name and font
8161 size controls. Replace them with a button in vertical mode. (2
8162 controls -> 1 button.) It invokes the font page of the format
8163 dialog. Add tips to toolbar border, background and foreground
8166 * src/workbook-format-toolbar.c (font_select_cmd): New
8167 command. Pop up cell format dialog at font page.
8168 (workbook_feedback_set): Remove warning by not defining toolbar
8169 variable for bonobo.
8170 (workbook_format_toolbar_orient): Remove warning by undefining
8173 * src/workbook.c (format_cells_cmd): Call dialog_cell_format
8174 with new parameter pageno = FD_CURRENT.
8176 * src/item-grid.c (context_menu_hander): Ditto
8178 2000-10-21 Michael Meeks <michael@helixcode.com>
8180 * src/gnumeric.xml.h: commit to CVS.
8182 2000-10-20 Jody Goldberg <jgoldberg@home.com>
8184 * src/format.c (do_render_number) : Brown paper bag. Bug 29068.
8185 I HATE global variables.
8186 (fmt_general_float) : Rewrite to rationalize and catch some corner
8189 2000-10-19 Michael Meeks <michael@helixcode.com>
8191 * src/gnumeric.xml: don't display the zoom control when vertical.
8193 2000-10-19 Michael Meeks <michael@helixcode.com>
8195 * configure.in (gnumeric_executable): check for (CVS) Bonobo 0.24
8197 * src/file.c (do_load_from): split from (workbook_load_from): upd.
8198 (workbook_try_read): use do_load_from to kill (empty) message box.
8200 * src/bonobo-io.c (gnumeric_bonobo_io_probe): remove annoying warning.
8202 * src/sheet-object-container.c (sheet_object_container_new_file):
8203 move this ugly code into bonobo and clean; make D&D components work again.
8205 * src/bonobo-io.c (gnumeric_bonobo_write_workbook): update for HEAD
8207 (gnumeric_bonobo_read_workbook): ditto.
8209 * src/sheet-object-bonobo.c (sheet_object_bonobo_load_from_file): upd.
8211 2000-10-18 Jody Goldberg <jgoldberg@home.com>
8213 * src/format.c (format_value) : Only format doubles as ints if they
8215 (fmt_general_int) : improve handling of log (0).
8216 (fmt_general_float) : ditto. Increase (temporarily) the width of a
8219 2000-10-18 Jody Goldberg <jgoldberg@home.com>
8221 * src/format.c (fmt_general_float) : clamp the precision at DBL_PREC.
8223 * src/rendered-value.c (rendered_value_new_ext) : Don't forget the
8224 intercharacter spacing when approximating the width of a character.
8226 * src/str.c (string_get_nocopy) : new function.
8228 * src/cell.c (cell_set_value) : Use it.
8230 2000-10-16 Jody Goldberg <jgoldberg@home.com>
8232 * src/rendered-value.c (rendered_value_new_ext) : fix some leaks.
8234 2000-10-15 Jody Goldberg <jgoldberg@home.com>
8236 * src/clipboard.c (clipboard_paste_region) : no need to clear the
8237 formats. We are going to be pasting over them later. This means
8238 that we don't rerender everything in the region then replace it.
8240 * src/rendered-value.c (rendered_value_new_ext) : Pass colwidth as a
8241 float to get beter resolution.
8242 * src/format.c (format_value) : Ditto.
8244 * src/format.c (fmt_general_float) : More tuning.
8246 2000-10-15 Jody Goldberg <jgoldberg@home.com>
8248 * src/sheet.c (sheet_update) : RE_RENDER when a span calc is forced.
8249 This is a bit brute force for now, but is necessary to force the
8250 re-rendering of values that may have width dependent formats.
8251 I've noted a possible future enhancement that would remove this req
8252 at the cost of some complexity.
8254 * src/format.c (fmt_general_float) : new function.
8255 (fmt_general_int) : new function.
8256 (format_value) : Use the new routines.
8258 2000-10-15 Jody Goldberg <jgoldberg@home.com>
8260 * src/cell.c (cell_set_value) : Re-render the entered text to handle
8261 width dependent formats.
8263 2000-10-14 Jody Goldberg <jgoldberg@home.com>
8265 * src/print-cell.c (print_overflow) : improve drawing of hash marks.
8266 * src/cell-draw.c (draw_overflow) : to always draw at least one hash.
8268 * src/rendered-value.c (rendered_value_new_ext) : pass in approx
8269 column width in characters for use by general.
8271 2000-10-14 Chema Celorio <chema@celorio.com>
8273 * src/workbook.c (workbook_sheet_get_free_name): remove g_assert not
8274 reached, as it was reached when duplicating sheets with names like :
8275 "Sales (1995)". If we have a sheet with a number in parenthesis and
8276 the number is > 1000. Duplicate it with the name "Name (numer) (2)".
8278 2000-10-13 Jody Goldberg <jgoldberg@home.com>
8280 * src/rendered-value.c (rendered_value_new) : Handle the unrefing of
8281 the local style here.
8282 (rendered_value_new_ext) : rather than here.
8283 (rendered_value_calc_size) : handke the unrefing of the local style
8285 (rendered_value_calc_size_ext) : rather than here.
8287 * src/preview-grid-controller.c (cb_grid_get_cell) : Adjust the
8288 semantics of the rendered_value_*_ext methods so that they don't
8291 2000-10-13 Jody Goldberg <jgoldberg@home.com>
8293 * src/position.c (parse_pos_init) : Relax the restrictions.
8295 * src/workbook.c : Improve wording of Names->Define.
8297 * src/gnumeric.xml : fix typo with Insert->Names->Define
8299 2000-10-12 Jody Goldberg <jgoldberg@home.com>
8301 * src/item-cursor.c (item_cursor_destroy) : Move the destruction of
8303 (item_cursor_drag_event) : from here. do not destroy the cursor.
8304 (item_cursor_do_action) : destroy the cursor here.
8305 (item_cursor_do_drop) : and sometimes here.
8307 2000-10-12 Jon K Hellan <hellan@acm.org>
8309 * configure.in: Require bonobo >= 0.21. We now use
8310 bonobo_ui_util_encode_str - added since 0.20.
8312 * src/gnumeric.xml: Bonobo no longer supports placeholder
8313 delimit="both". Use "top" and a separator instead. Indicate
8314 separators by <separator/> instead <menuitem/>. Change last
8315 remaining descr to _tip.
8317 * src/history.c (history_menu_insert_items): Bonobo changed
8319 (file_history_cmd): Use "tip" instead of "descr"
8321 2000-10-12 Jody Goldberg <jgoldberg@home.com>
8323 * src/main.c (gnumeric_main) : manually init the corba factories after
8324 the support subsystems are initialized, but before the workbooks are
8325 created. This needs some serious cleaning.
8327 * src/embeddable-grid.c (EmbeddableGridFactory_init) : return a flag
8329 (grid_view_activate) : focus on the widget not the containing object.
8331 * src/corba-args.c (gnumeric_arg_parse) : Do not init the corba
8332 factories yet. they were getting called before the application was
8335 2000-10-11 Jody Goldberg <jgoldberg@home.com>
8337 * src/gnumeric-util.c (gnumeric_create_popup_menu) : Generalized and
8338 moved from item-grid.c
8340 2000-10-11 Jon K Hellan <hellan@acm.org>
8342 * src/history.c (file_history_cmd): Removed yet another vestige of
8343 the old Bonobo UI Handler code: Changed `BonoboUIHandler *uih' to
8344 `BonoboUIComponent *uic.
8346 2000-10-11 Martin Baulig <baulig@suse.de>
8348 Removed the last bits of the old Bonobo UI Handler code.
8350 * src/workbook-private.h (WorkbookPrivate): Changed `BonoboUIHandler *uih'
8351 to `BonoboUIComponent *uic'.
8352 * src/workbook.c (workbook_new): Create the BonoboUIComponent here.
8354 2000-10-10 Jody Goldberg <jgoldberg@home.com>
8356 * src/gnumeric-util.c (run_popup_menu) : Delete.
8357 (popup_menu_item_activated) : Delete.
8358 (gtk_radio_button_select) : Delete.
8360 * src/item-cursor.c (item_cursor_do_drop) : Use item_grid_popup_menu.
8362 * src/sheet-object.c (display_object_menu) : Rename from create_popup_menu
8363 and display the menu.
8364 (control_point_handle_event) : simplify with display_object_menu.
8365 (sheet_object_canvas_event) : simplify with display_object_menu.
8367 * src/gnumeric-util.c (gnumeric_popup_menu) : Do not pass the button
8368 number from the event that is poping up the menu. That disables the
8369 ability to select a menu item via a different button.
8371 2000-10-10 Jody Goldberg <jgoldberg@home.com>
8373 * src/workbook-private.c (workbook_private_init) : Init the
8374 updating_toolbar flag.
8376 * src/workbook-format-toolbar.c (set_selection_halign) : Use the
8377 updating toolbar flag so that the bonobo version (which does not
8378 disable the callbacks) works correctly.
8379 (change_selection_font) : Ditto.
8380 (workbook_format_toolbutton_update) : Remove the hackish static and use a real flag.
8382 * src/gnumeric.xml : Update for the new bonobo.
8384 * configure.in (AM_INIT_AUTOMAKE) : follow new protocol and bump
8385 version immediately after release rather than before.