1. 09 Aug, 2002 1 commit
    • Jody Goldberg's avatar
      improve handling of arrays. · 7ddc71db
      Jody Goldberg authored
      2002-08-08  Jody Goldberg <jody@gnome.org>
      	* ms-formula-read.c (ms_excel_parse_formula) : improve handling of
      	* ms-excel-read.c (biff_boundsheet_data_new) : improve debug spew.
      	(sst_read_string) : no need to pass version an sst is biff8 specific.
      	(ms_excel_read_SST) : ditto.
      	(ms_excel_read_EXSST) : new convience routine.
      	(biff_boundsheet_data_new) : move boundsheet_data_by_index into a ptr
      	  array, and store the gnumeric sheets directly.
      	(ms_excel_workbook_new) : use g_hash_table_new_full to make cleanup
      	(ms_excel_workbook_destroy) : simplify.
      	(ms_excel_read_SETUP) : support the 'print comments' flag
      	(ms_excel_read_MULRK) : split into its own function.
      	(ms_excel_read_MULBLANK) : ditto.
      	(ms_excel_read_SCL) : ditto
      	(ms_excel_read_sheet) : spew the sheet password in case we need to
      	  generate it.
      	(ms_excel_SUPBOOK) : I finally understand the self reference magic.
      	  More work to do to support external links.
      	(ms_excel_workbook_get_externsheet_v8) : improve the warnings on error.
      	(ms_excel_externsheet_v8) : those sheet indicies are BOUNDSHEET
      	  references if the supbook is a self reference.  We can not directly
      	  access the Gnumeric sheets because XL has hidden elements that skew
      	  the index.
      	(ms_excel_workbook_get_externsheet_v7) : ditto.
      	(ms_excel_externsheet_v7) : store the sheet directly.
      	* ms-excel-write.c (write_magic_interface) : biff8 stores the code
      	  page in the interface header for some reason.
      	(ms_excel_write_EOF) : rename from biff_write_eof.
      	(excel_write_SETUP) : new.
      	(write_wsbool) : remove duplicate code.
      	(excel_write_COUNTRY) : new.
      	(write_sheet_head) : tidy.
      	(excel_write_sheet_tail) : SCL is not version specific.
      	(sst_collect_str) : new.
      	(ms_excel_write_SST) : prepare to write an SST (not finished)
      2002-08-08  Jody Goldberg <jody@gnome.org>
      	* src/workbook-view.c (wb_view_new_from_input) : its ok to have 0 sheets,
      	  this is not the place to display the error messages.
      	* src/expr-name.c (expr_name_init) : activate the builtins to help
      	  catch someone trying to unref them.
      	* gnumeric.desktop.in (Categories) : add encoding
      	* src/value.c (value_get_as_string) : quote strings in arrays
      2002-08-07  Jody Goldberg <jody@gnome.org>
      	* src/command-context.c (cmd_context_set_sensitive) : move here from
      	* src/workbook-view.c (wb_view_save_as) : use it here.
      	* src/gui-file.c (gui_file_read) : rename it here.
      	* src/command-context-stderr.c (ccs_get_password) : new.
      	(ccs_set_sensitive) : new.
      	(ccs_class_init) : register them.
  2. 08 Jul, 2002 1 commit
    • Jody Goldberg's avatar
      Add GnmHLink. · d6271c90
      Jody Goldberg authored
      2002-07-07  Jody Goldberg <jody@gnome.org>
      	* src/gnumeric.h : Add GnmHLink.
      	* src/item-grid.c : include hlink.h
      	(item_grid_event) : a button release on an h-link activates it.
      	* src/Makefile.am : Add hlink.[ch]
      	* src/sheet.h : Lets take a break from architecture and add something
      	  simple like hyper-links.
  3. 27 Mar, 2002 1 commit
    • Jody Goldberg's avatar
      new. new. new. · 625614ac
      Jody Goldberg authored
      2002-03-27  Jody Goldberg <jody@gnome.org>
      	* src/io-context.c (gnm_io_get_password) : new.
      	* src/command-context.c (cmd_context_get_password) : new.
      	* src/workbook-control-gui.c (wbcg_get_password) : new.
  4. 09 Mar, 2002 1 commit
  5. 23 Jan, 2002 1 commit
  6. 14 Jul, 2001 1 commit
    • Chyla Zbigniew's avatar
      New. (error_info_new_printf): Use error_info_new_vprintf. · 3537beaf
      Chyla Zbigniew authored
      * src/error-info.[ch]
      (error_info_new_vprintf): New.
      (error_info_new_printf): Use error_info_new_vprintf.
      (error_info_peek_message): Constified.
      * src/command-context-priv.h (struct CommandContextClass): Added
      error.error_info virtual.
      * src/command-context.[ch] (gnumeric_error_error_info): New.
      * src/io-context.[ch]
      (gnumeric_io_error_system, gnumeric_io_error_read,
      gnumeric_io_error_save): Use gnumeric_io_error_string.
      (gnumeric_io_error_string): New.
      (gnumeric_io_error_display): Renamed from
      gnumeric_io_error_info_display. Use CommandContext's virtual -
      (gnumeric_io_error_info_clear, gnumeric_io_has_error_info): Removed.
      * src/gnumeric-util.c
      (ctree_insert_error_info): Automatically expand most nodes (don't expand
      nodes with siblings).
      (gnumeric_error_info_dialog_show_full): Renamed from
      gnumeric_error_info_dialog_show. Display only a tree with error
      details. Don't hardcode ctree column width, make ctree look nicer (no
      lines, triangles as icons).
      (gnumeric_error_info_dialog_show): New function, displays only main part
      of the error and (optionally) "Show details" button. Use standard
      * src/plugin-util.c (gnumeric_fopen_error_info,
      gnumeric_mmap_error_info): Use error_info_new_from_errno.
      (gnumeric_open_error_info): Use error_info_new_from_errno,
      added missing *ret_error.
      * src/workbook-control-gui.c (wbcg_error_error_info): New
      (implementation of CommandContext's virtual).
      (workbook_control_gui_ctor_class): Use it here.
      * src/workbook-view.c (wb_view_save_as, wb_view_save,
      wb_view_open_custom): Don't use removed gnumeric_io_has_error_info.
  7. 01 Jun, 2001 1 commit
    • Chyla Zbigniew's avatar
      Support for reporting i/o progress via IOContext. · a1a6847e
      Chyla Zbigniew authored
      Support for reporting i/o progress via IOContext.
      * src/command-context-priv.h (struct CommandContextClass): Added
      progress_message_set virtual.
      * src/command-context.[ch] (gnumeric_progress_message_set): New.
      * src/io-context-priv.h
      Made IOContext a GtkObject.
      (enum GnumProgressHelperType, struct GnumProgressHelper): New.
      * src/io-context.[ch]
      Made IOContext a GtkObject.
      (io_progress_update, io_progress_message,
      file_io_progress_set, file_io_progress_update,
      memory_io_progress_set, memory_io_progress_update,
      count_io_progress_set, count_io_progress_update,
      io_progress_unset): New functions.
      (gnumeric_io_context_free): Removed, use gtk_object_destroy instead.
      * src/workbook-control-gui.c (wbcg_progress_message_set): New,
      implementation of CommandContext virtual.
      * src/workbook-view.c
      (wb_view_save_as, wb_view_save, wb_view_open_custom):
      * src/xml-io.h
      (struct _XmlParseContext): New members (io_context, element_counter) for
      progress reporting.
      * src/xml-io.c
      (xml_read_styles): Update i/o progress every N_ELEMENTS_BETWEEN_UPDATES
      (xml_sheet_read): Ditto for cells.
      (xml_get_n_children, xml_read_sheet_n_elements,
      xml_read_workbook_n_elements): Internal functions, calculating the
      number of "elements" (styles and cells) in workbook.
      (xml_workbook_read): Set up io progress to "Processing XML tree" stage.
      (gnumeric_xml_read_workbook): Load the file into an XML tree using the
      Push mode and update i/o progress regularly.
      * src/plugin-util.c
      #include <libgnome/libgnome.h> instead of <gnome.h>.
  8. 04 May, 2001 1 commit
    • Jody Goldberg's avatar
      s/clipboard_release/cellregion_free/ s/range_copy/range_dup/ · 32bde6ee
      Jody Goldberg authored
      2001-05-04  Jody Goldberg <jgoldberg@home.com>
      	* src/commands.c (cmd_autofill) : Use sheet_range_contains_region.
      	(cmd_autofill_redo) : no need to test here.
      	(cmd_paste_cut) : test destination for validity and ensure that it
      	  does not slice up any merged regions or arrays.  Make the descriptor
      	  an argument so that other commands can use this one.
      	(cmd_ins_del_colrow_redo) : use colrow_max.
      	(cmd_area_set_text_redo) : use sheet_ranges_split_region.
      	(cmd_colrow_outline_change) : suppress warning.
      	* src/gui-clipboard.c (x_selection_to_cell_region) : simplify by using
      	  some of the convenience routines.
      	* src/gutils.c (gnumeric_sys_data_dir) : warning suppression.
      	(gnumeric_sys_lib_dir) : ditto.
      	* src/item-bar.c (item_bar_draw) : add missing warning.
      	* src/item-cursor.c (item_cursor_drag_event) : Don't assume the
      	  release came from the button that started the grab (think about
      	  multiple simultaneous button downs.
      	(item_cursor_selection_event) : ditto.
      	(item_cursor_do_drop) : changes to selection_first_range.
      	* src/parse-util.c (col_name_internal) : new routine split from
      	  col_name with better buffer handling.
      	(col_name) : used here.
      	(cols_name) : and in this new function.
      	* src/print.c (sheet_print_selection) : changes to
      	* src/print-info.c (print_info_new) : default even_if_only_styles to
      	  false.  This is probably what most people want.
      	* src/ranges.c (range_translate) : don't invert.
      	(range_height) : new util.  could probably be #define.
      	(range_width) : new util.  could probably be #define.
      	(range_is_infinite) : use range_is_full.
      	(range_is_full) : new util.
      	* src/search.c (calculate_replacement) : warning suppression.
      	* src/selection.c (sheet_selection_cut) : Use
      	  sheet_range_splits_region and selection_first_range.
      	(sheet_selection_copy) : Use selection_first_range and remove TODO
      	  about supporting not paste by content for partial arrays.
      	(selection_first_range) : Add optional error reporting if there are
      	  multiple selection ranges.
      	* src/format.c (format_get_currency) : diddle the logic to get
      	  undefined to work the way people expect for locale C.
      	* src/sheet-merge.c (sheet_merge_relocate) : remove some dead code.
      	(sheet_merge_add) : changes to sheet_range_splits_array.
      	* src/sheet-object-widget.c (sheet_widget_checkbox_construct) :
      	  changes to selection_first_range.
      	* src/sheet.c (sheet_delete_{cols,rows}) : changes to
      	(sheet_insert_{cols,rows}) : use sheet_range_splits_array.
      	(avoid_dividing_array_vertical) : delete.
      	(avoid_dividing_array_horizontal) : delete.
      	(sheet_is_pristine) : constness.
      	(sheet_mark_clean) : delete.
      	(sheet_clear_region) : changes to sheet_range_splits_array.
      	(sheet_ranges_split_region) : renamed from selection_check_for_array.
      	(sheet_range_splits_region) : new routine to check arrays and merged
      	(sheet_range_splits_array) : improve and add hooks to be used for
      	  overlapping checks.
      	(cb_check_array_vertical) : report the array being split.
      	(cb_check_array_horizontal) : report the array being split.
      	* src/stf-parse.c (stf_parse_region) : use cellregion_new.
      	(stf_parse_is_valid_data) : simplify.
      	* src/value-sheet.c (value_area_get_width) : warning suppression.
      	(value_area_get_height) : warning suppression.
      	(value_area_fetch_x_y : signedness.
      	(value_area_get_x_y) : signedness.
      	* src/value.c (value_array_resize) : signedness.
      	(value_array_set) : signedness.
      	* src/workbook-control-gui.c (wbcg_error_splits_array) : signature
      	(cb_insert_rows) : use selection_first_range
      	(cb_insert_cols) : ditto.
      	(sort_cmd) : ditto.
      	(cb_workbook_debug_info) : clean out some deadwood.
      	* src/workbook-edit.c (auto_complete_matches) : warning suppression.
      	* src/workbook.c (workbook_sheet_detach) : warning suppression.
      	(g_ptr_array_insert) : warning suppression, moved to gutils.
      	* src/xml-io.c (xml_write_attributes) : warning suppression.
      	(xml_read_selection_clipboard) : use cellregion_new and tidyup.
      	* src/clipboard.c (paste_link) : Only make the link sheet specific if
      	  we need to.
      	(clipboard_paste_region) : constness, support being able to paste
      	  content only as link or value.
      	(clipboard_prepend_cell) : check for arrays.
      	(clipboard_copy_range) : use cellregion_new
      	(cellregion_new) : new function
      	(cellregion_free) : renamed from clipboard_release.
      	(cellregion_to_string) : moved here from render-ascii.
      	src/cmd-edit.c (cmd_paste) : more protection. Merge in
      	(cmd_paste_to_selection) : handle changes to selection_is_simple and
      	  use selection_first_range
      	(cmd_shift_rows) : changes to cmd_paste_cut.
      	(cmd_shift_cols) : ditto.
      	* src/command-context-priv.h : change signature of splits array.
      	* src/command-context.h : ditto.
      	* src/command-context.c (gnumeric_error_splits_array) : ditto.
      	* src/application.c (application_clipboard_clear) :
      	(application_set_selected_sheet) : remove #warning, it is not portable.
      	* src/commands.c
      	* src/Makefile.am : remove render-ascii.[ch]  Move their content into
      2001-05-01  Jody Goldberg <jgoldberg@home.com>
      	* src/clipboard.c (clipboard_prepend_cell) : remove ugly
      	* src/workbook-edit.c (auto_complete_matches) : remove warning.
      	* src/xml-io.c (xml_write_attributes) : remove warning.
  9. 14 Feb, 2001 1 commit
  10. 31 Oct, 2000 1 commit
    • Jody Goldberg's avatar
      Set LC_MONETARY and LC_NUMERIC. Ditto. (xml_workbook_read) : Ditto. · ffac72f5
      Jody Goldberg authored
      2000-10-31  Jody Goldberg <jgoldberg@home.com>
      	* src/workbook-view.c (wb_view_auto_expr) : Set LC_MONETARY and
      	* src/xml-io.c (xml_workbook_write) : Ditto.
      	(xml_workbook_read) : Ditto.
      2000-10-31  Jody Goldberg <jgoldberg@home.com>
      	* src/dialogs/*.[ch] : WorkbookControlGUI is now required for gui
      	  operations.  A WorkbookView is required to know which sheet is the
      	* src/xml-io.c : We now load/save WorkbookViews.
      	* src/xml-io-autoft.c : Adjust to signature changes.
      	* src/workbook.c : Split the View into WorkbookView.
      	  Abstract the Controler interface, and move the GUI specific
      	  implementation of the Controler into WorkbookControlGUI.
      	* src/workbook-view.c : Complete rewrite with correct semantics.
      	* src/workbook-private.h : Move all the GUI specific stuff into
      	  WorkbookControlGUI were it belongs.
      	* src/workbook-private.c (workbook_private_class_init) : Fix typo.
      	* src/workbook-edit.c : These are now WorkbookControlGUI specific.
      	  We should rename the functions eventually.
      	* src/workbook-format-toolbar.c : Ditto.
      	* src/workbook-object-toolbar.c : Ditto.
      	* src/workbook-cmd-format.c : Adjust to signature changes.
      	  and use WorkbookControlGUI were necessary.
      	* src/style.c (style_font_new_from) : Delete dead code.
      	* src/solver-lp.c : Adjust to signature changes.
      	* src/sort.c : Ditto.
      	* src/stf.c : Ditto. Make dialog conditional on gui-ness.
      	* src/sheet.c (sheet_new_sheet_view) : IS_SHEET checks for NULL.
      	(sheet_detach_sheet_view) : renamed from sheet_destroy_sheet_view
      	  and only take a SheetView as argument.
      	(sheet_new) : Do not create a view by default.
      	(sheet_update_zoom_controls) : foreach control.
      	(sheet_update_editpos) : ditto.
      	(sheet_update) : handle multiple views and controls.
      	* src/sheet-view.c : Commands take WorkbookControls rather than
      	* src/sheet-object-widget.c : Most things take WorkbookControlGUI
      	  rather than Workbooks.
      	* src/sheet-object-container.c (sheet_object_container_new_view) :
      	  Use the uic from the WorkbookControlGUI.
      	* src/sheet-control.c : New file. Unused so far.
      	  cp sheet-view.c sheet-control.c
      	* src/print.c : Make the GUI dependency explicit.
      	  At some point the setup dialog should be split out of here.
      	* src/main.c (gnumeric_main) : Explicitly create a WorkbookControlGUI
      	  only adding sheets if nothing was loaded.  Improve handing of exit
      	  request while loading.
      	* src/item-grid.c (item_grid_draw) : Filter the edit cell from here
      	  because we know which control to use.
      	(context_menu_hander) : Switch to WorkbookControlGUI.
      	(item_grid_popup_menu) : Ditto.
      	* src/item-edit.c : Everything takes a WorkbookControlGUI inplace of a
      	  Workbook now.
      	* src/item-cursor.c (item_cursor_target_region_ok) : dialog_run takes
      	  a WorkbookControlGUI.
      	(item_cursor_do_action) : All the commands take WorkbookControls.
      	* src/item-bar.c (item_bar_event) : item_grid_popup_menu takes a
      	  SheetView now.
      	* src/history.c : Take WorkbookControlGUI.
      	  Update all controls for each workbook.
      	* src/gui-clipboard.c : Use 'unsigned char'
      	* src/gnumeric.xml : More work to split commands from layout.
      	* src/gnumeric-util.c (gnumeric_no_modify_array_notice) : Delete.
      	(gnumeric_notice) : Take a WorkbookControlGUI.
      	(gnumeric_wb_dialog_run) : Ditto.
      	(gnumeric_dialog_run) : Ditto.
      	(gnumeric_dialog_show) : Ditto.
      	(gnumeric_set_transient) : Ditto.
      	(gnumeric_glade_xml_new) : Ditto.
      	(gnumeric_non_modal_dialog) : Ditto.
      	(gnumeric_inject_widget_into_bonoboui) : Ditto.
      	* src/gnumeric-sheet.c : SheetView now has a WorkbookControlGUI member
      	  to keep track of which control it is associated with. Use it.
      	* src/file.c : Adjust to lots of signature changes.
      	  We now load/save WorkbookView rather than Workbook.
      	  Add a placeholder struct IOContext so that we can consider doing
      	  smarter import/export and dealing with warnings and missing things
      	* src/eval.c (workbook_recalc_all) : After a recalc update all views.
      	* src/commands.c (undo_redo_menu_labels) : foreach control.
      	(command_undo) : ditto.
      	(command_redo) : ditto.
      	(command_push_undo) : change signature.  The workbookcontrol
      	  now acts as the command context.
      	* src/cmd-edit.c : Adjust to signature changes.
      	* src/clipboard.c : split the gui specific X handlers out into a new
      	* src/gui-clipboard.c :  here.
      	* src/cell-draw.c (cell_draw) : Do not test the sheet for whether or
      	  not to we are editing.  That is at the control level.  Test it in
      	  the rendering loop.
      	* src/bonobo-io.c : FIXME. adjusted to signature changes.  Totatly
      	  broken for now.  This needs a View rather than a Model and should be
      	  associated with something.
      	* src/application.c (application_workbook_list_add) : New function.
      	(application_workbook_list_remove) : New function.
      	(application_workbook_list) : New function.
      	(application_clipboard_copy) : foreach control.
      	(application_clipboard_cut) : foreach control.
      	(application_clipboard_clear) : foreach control.
      	(application_workbook_foreach) : renamed from workbook_foreach.
      	(application_set_selected_sheet) : FIXME. Disabled for now.
      	* src/about.c (cb_closed) : Associated the flag with the control
      	(dialog_about) : dialogs are associated with gui-controls.
      	* src/analysis-tools.c : change all dialog signatures to handle MVC
      	  split of workbook.
      2000-10-30  Jody Goldberg <jgoldberg@home.com>
      	* src/Makefile.am : Add new command-context,  io-context,
      	  workbook-view, workbook-control, workbook-control-gui files.
      	  Remove old command-context-gui, command-context-corba, and disable
      	  corba-* for now.
      2000-10-29  Jody Goldberg <jgoldberg@home.com>
      	* idl/gnumeric-graphs.idl : Remove studdly caps.  I wish people would
      	  make up their minds.
      	* idl/Gnumeric.idl : Remove Workbook::show.
      2000-10-29  Jody Goldberg <jgoldberg@home.com>
      	* BUGS : Update.
      	* NEWS : Update.
      	* TODO : Update.
  11. 27 May, 2000 1 commit
    • Jody Goldberg's avatar
      Revamp pasting. This needs alot of testing. Some initial work on a · 94c47dab
      Jody Goldberg authored
      Revamp pasting.
      This needs alot of testing.
      Some initial work on a function druid.
      2000-05-26  Jody Goldberg <jgoldberg@home.com>
      	* src/selection.c (selection_is_simple) : Use a command context.
      	(sheet_selection_paste) : Delete.
      	* src/plugin.c : rename error_plugin_problem -> error_plugin.
      	* src/item-grid.c (context_paste_cmd) : Use cmd_paste_to_selection.
      	(context_paste_special_cmd) : Ditto.
      	* src/gnumeric-sheet.c : remove cached 'controlling_entry' in
      	  preparation for the function druid.
      	* src/corba-sheet.c : Delete Sheet_selection_paste.
      	  this will need to be replaced with a new signature.
      	* src/item-cursor.c (item_cursor_do_action) : Use new cmd_paste.
      	* src/commands.c (cmd_area_set_text_{undo,redo}) : Use new
      	(cmd_ins_del_row_col_{undo,redo}) : Ditto.
      	(cmd_clear_{undo,redo}) : Ditto.
      	(cmd_set_date_time_{undo,redo}) : Ditto.
      	(cmd_paste_cut_*) : new functions.
      	* src/command-context*.c : Add progress, remove splits_array.
      	* src/cmd-edit.c (cmd_paste) : New function.
      	(cmd_paste_to_selection) : New function.
      	* src/clipboard.c : Reorganize/rewrite.
      	(clipboard_paste_region) : paste content.
      	(clipboard_paste) : paste content from clipboard or X selection.
      	(paste_target_init) : New function.
      	(sheet_paste_selection) : merge into clipboard_paste_region.
      	* src/application.c (application_clipboard_copy) : rename
      	  clipboard_copy_cell_range -> clipboard_copy_range.
      	* idl/Gnumeric.idl : Merge InvalidValue, SplitsArray -> InvalidCmd.
      	* src/workbook.c (workbook_setup_status_area) : Include a progress bar.
  12. 04 May, 2000 1 commit
    • Jody Goldberg's avatar
      new function. Handle. Handle. · 9a04a8ea
      Jody Goldberg authored
      2000-05-03  Jody Goldberg <jgoldberg@home.com>
      	* src/command-context.c (gnumeric_error_invalid) : new function.
      	* src/command-context-gui.c (ccg_error_invalid) : Handle.
      	* src/command-context-corba.c (ccc_error_invalid) : Handle.
      	* src/commands.c (cmd_rename_sheet_{undo,redo}) : Pass a context to
      	* src/workbook.c (workbook_rename_sheet) : Sheet names can not be
      	  empty.  Take a CommandContext and report the error.  Invert the
      	  return value.
  13. 27 Apr, 2000 1 commit
    • Jody Goldberg's avatar
      Improve versioning. Fix a few bugs. · 2c8b64d0
      Jody Goldberg authored
      Improve versioning.
      Fix a few bugs.
      2000-04-26  Jody Goldberg <jgoldberg@home.com>
      	* src/command-context.c (gnumeric_error_sys_err) : New function.
      	* src/command-context-gui.c (ccg_error_sys_err) : Support it.
      	* src/gnumeric-util.c (gnumeric_glade_xml_new) : Use gnumeric_error_sys_err.
      	* src/gutils.c (gnumeric_sys_{data,lib,glade,plugin)_dir) : New functions.
      	(gnumeric_usr_dir, gnumeric_usr_plugin_dir) : New functions.
      	* src/plugin.c (load_all_plugins) : Use
      	  gnumeric_usr_plugin_dir, and  gnumeric_sys_plugin_dir.
      	* src/item-edit.c (point_is_inside_range) : Handle non-singleton
      	  expr start characters.
      2000-04-25  Jody Goldberg <jgoldberg@home.com>
      	* *.c : glade_new_xml -> gnumeric_glade_new_xml
      	  Localize GNUMERIC_GLADEDIR so that plugins can use it too.
      	* src/gnumeric-util.c (gnumeric_glade_xml_new) : New function.
      	* */Makefile.am : Set 'DATADIR' rather than GLADEDIR.  And version
      	  the glade file the same way the plugins are set.  This should
      	  probably expand to include architecture akin to gcc.
      	* src/widgets/widget-editable-label.c (el_button_press_event) :
      	  Clicking in another window accepts the changes.  Once we have
      	  reliquished our grab push the button event back on the queue
      	  so that it can be forwarded on to the appropriate recipient (9007).
      	* src/parse-util.c (parse_text_value_or_expr) : Watch for 1 character
      	  strings which could start an expression.
  14. 14 Feb, 2000 1 commit
    • Jon K Hellan's avatar
      Add scrolled window · b6e8a273
      Jon K Hellan authored
      2000-02-14  Jon K Hellan  <hellan@acm.org>
              * src/dialogs/import.glade: Add scrolled window
      	* src/file.c (workbook_read, workbook_import, workbook_save_as,
      	workbook_save): Use error message template.
      	* src/command-context.h (struct _CommandContext): Add
      	template_list member.
      	(struct CommandContextClass): Call message parameter to methods
      	(command_context_push_template, command_context_pop_template):
      	* src/command-context.c (command_context_push_template): New
      	function. Push a printf template for error messages to stack.
      	(command_context_pop_template): New function. Pop current template
      	from stack.
      	(format_message): New function. Format a message using template on
      	(gnumeric_error_plugin_problem, gnumeric_error_read,
      	gnumeric_error_save): Use format_message.
      	* src/command-context-corba.c (ccc_error_plugin_problem,
      	ccc_error_read, ccc_error_save): Call message parameter
      	* src/command-context-gui.c (ccg_error_plugin_problem,
      	ccg_error_read, ccg_error_save): Ditto.
  15. 28 Jan, 2000 1 commit
    • Jon K Hellan's avatar
      Megacommit. · 333a8167
      Jon K Hellan authored
      2000-01-29  Jon K Hellan  <hellan@acm.org>
      	The purpose of the changeset is twofold:
      	1. Use CommandContexts for error reporting for file read/save.
      	2. This allows us to let FileFormatOpen return 0 on success, -1 on
      	   failure, same as FileFormatSave. The convention to return NULL
      	   on success was highly ideosyncratic.
      	* src/file.h (FileFormatOpen, FileFormatSave, workbook_load_from,
      	workbook_import): Add CommandContext
      	(FileFormatOpen, workbook_load_from): Return int instead of char*.
      	* src/file.c (workbook_load_from, workbook_try_read,
      	workbook_read, workbook_import, workbook_save_as, workbook_save)
      	(file_error_message): Remove function
      	(workbook_read, workbook_load_from, workbook_save_as,
      	workbook_save): Do not display message, message, plugin does -
      	using CommandContext.
      	(workbook_load_from): Return int instead of char*.
      	(workbook_load_from, workbook_import): fo->open returns int
      	instead of char*.
      	(workbook_try_read): Remove msg paramenter
      	* src/workbook.c (workbook_persist_file_load,
      	workbook_persist_file_save): Use workbook_command_context_gui.
      	(file_import_cmd): ditto
      	(file_open_cmd): ditto
      	* src/gnumeric-sheet.c (gnumeric_sheet_filenames_dropped): Use
      	workbook_command_context_gui. Call workbook_try_read without msg
      	* src/workbook.h (workbook_try_read, workbook_read,
      	workbook_save_as, workbook_save): Add command context
      	(workbook_try_read): Remove msg paramenter
      	* src/dialogs/dialog-autosave.c (dialog_autosave_callback):
      	* src/command-context.[ch] (gnumeric_error_read,
      	gnumeric_error_save): New functions.
      	* src/command-context-corba.c (ccc_error_read, ccc_error_save):
      	(ccc_init_class): Initialize error_read, error_save.
      	* src/command-context-gui.c (ccg_error_read, ccg_error_save):
      	(ccg_init_class): Initialize error_read, error_save.
      	* src/main.c (gnumeric_main): Make a CommandContext for use before
      	we make first workbook. Unref it when no longer needed. Call
      	plugins_init and workbook_read with CommandContext.
      	* src/plugin-manager.c (add_cb): Use gnumeric_error_plugin_problem.
      	(remove_cb): Ditto.
      	* src/plugin.c (plugin_load, plugin_unload): CommandContext
      	instead of workbook.
      	(plugins_init): Add CommandContext.
      	* src/plugin.c (plugin_load, plugin_unload): CommandContext
      	instead of workbook.
      	(plugin_unload): Use gnumeric_error_plugin_problem.
      	(plugin_load_plugins_in_dir, load_all_plugins, plugins_init): Add
      	* src/xml-io.h:  ditto
      	* src/xml-io.c (gnumeric_xml_read_workbook,
      	gnumeric_xml_write_workbook):  ditto
      In plugins/dif:
      	* dif.c (dif_read_workbook, dif_write_workbook): Add
      	(dif_read_workbook): Return 0 on success, -1 on failure.
      	 Use gnumeric_error_read to report errors.
      In plugins/excel:
      	* excel.h (ms_excel_read_workbook, ms_excel_write_workbook) Add
      	CommandContext. Return int.
      	* ms-excel-read.c (ms_excel_read_workbook): Add
      	CommandContext. Return 0 on success, -1 on failure. Use
      	gnumeric_error_read to display messages.
      	* ms-excel-write.c (write_sheet): Check max no. of rows for the
      	(new_sheet): Return the ExcelSheet. Let caller add it to
      	(pre_pass): Add CommandContext.
      	(free_workbook): New function, previously in write_workbook.
      	(write_workbook): Change parameter from Workbook to ExcelWorkbook.
      	Move deallocation to free_workbook.
      	(check_sheet): New function. Check if we are able to save the
      	(ms_excel_check_write): New function. Check if we are able to save
      	to the file. Do initialization previously in
      	(ms_excel_write_workbook): Add CommandContext. Add state. Change
      	wb from Workbook to ExcelWorkbook. Use gnumeric_error_save to
      	report problems. Return 0 on success, -1 on failure.
      	* ms-excel-biff.h: Define enum for max no. of rows. Fix typo.
      	* boot.c (excel_load, excel_save, excel_save_98, excel_save_95):
      	Add CommandContext.
      	(excel_load): Return 0 on success, -1 on failure.
      	Use gnumeric_error_read to display messages. Remove "Opening .. "
      	message on stdout.
      	(excel_probe_write): New function. Check if we are able to save to
      	the file.
      	(excel_save): Use gnumeric_error_save to display messages.
      	Return 0 on success, -1 on failure.
      In plugins/ff-csv:
      	* csv-io.c (csv_read_workbook, csv_write_workbook,
      	csv_parse_sheet, csv_parse_field): Add CommandContext. Return 0 on
      	success, -1 on failure. Use gnumeric_error_read to report errors.
      In plugins/ff-stf:
      	* dialog-stf.h: Add CommandContext. Return int.
      	* dialog-stf.c (dialog_stf) : Add CommandContext. Return 0 on success,
      	-1 on failure. Use gnumeric_error_read to report errors.
      	* stf.c (stf_read_workbook): Ditto.
      In plugins/html:
      	* epsf.h (epsf_write_wb): Add CommandContext.
      	* epsf.c (epsf_write_wb): ditto.
      	* latex.h (html_write_wb_latex, html_write_wb_latex2e): ditto
      	* latex.c (html_write_wb_latex, html_write_wb_latex2e): ditto
      	* roff.c (html_write_wb_roff_ps, html_write_wb_roff_dvi,
      	html_write_wb_roff_pdf, html_write_wb_roff): ditto
      	* roff.c (html_write_wb_roff_ps, html_write_wb_roff_dvi,
      	html_write_wb_roff_pdf, html_write_wb_roff): ditto
      	* html.h (html_read, html_write_wb_html40, html_write_wb_html32):
      	(html_read): Return int.
      	* html.c (html_read, html_write_wb_html40, html_write_wb_html32):
      	(html_read): Return 0 on success, -1 on failure. Use
      	gnumeric_error_read to report errors.
      In plugins/lotus-123:
      	* lotus.c (lotus_read): Add CommandContext. Return 0 on success,
      	-1 on failure. Use gnumeric_error_read to report errors. Close
      	file unconditionally.
      	(read_workbook): Return 0 on success, -1 on failure. Remove unused
      	panic_message variable.
      	* lotus.h (lotus_read): Add CommandContext. Return int.
      	* boot.c (lotus_load): Ditto
      In plugins/oleo:
      	* oleo.c (oleo_read): Add CommandContext. Return 0 on success,
      	-1 on failure. Use gnumeric_error_read to report errors.
      	* oleo.h (oleo_read): Add CommandContext. Return int.
      	* boot.c (oleo_load): Ditto.
      In plugins/plan-perfect:
      	* pln.c (pln_parse_sheet, pln_read_workbook): Add
      	CommandContext. Return 0 on success, -1 on failure. Use
      	gnumeric_error_read to report errors.
      In plugins/sc:
      	* sc.c (sc_read_workbook, sc_parse_sheet): Add
      	CommandContext. Return 0 on success, -1 on failure.  Use
      	gnumeric_error_read to report errors.
      In plugins/sylk:
      	* sylk.c (sylk_read_workbook, sylk_parse_sheet): Add
      	CommandContext. Return 0 on success, -1 on failure. Use
      	gnumeric_error_read to report errors.
      In plugins/text:
      	* text-io.c (text_read_workbook, text_write_workbook,
      	readTextWorkbook): Add CommandContext.
      	(text_read_workbook, readTextWorkbook): Return 0 on success, -1 on
      	(readTextWorkbook): Use gnumeric_error_read to report errors.
      In plugins/xbase:
      	* xbase.h (xbase_open): Add CommandContext.
      	* xbase.c (xbase_open): Add CommandContext. Remove progress
      	message to stdout. Use gnumeric_error_read to report errors.
      	* boot.c (xbase_load): Add CommandContext. Return 0 on success, -1
      	on failure.
  16. 30 Dec, 1999 1 commit
    • Miguel de Icaza's avatar
      New macro, copied from Evolution. We need to refactor our code in Gnumeric · 87152856
      Miguel de Icaza authored
      1999-12-30  Miguel de Icaza  <miguel@gnu.org>
      	* src/gnumeric-type-util.h (GNUMERIC_MAKE_TYPE): New macro, copied
      	from Evolution.  We need to refactor our code in Gnumeric to use
      	this macro.
      	* src/workbook.c (workbook_do_destroy): Destroy the per-workbook
      	context here.  Hardcoded to be a GUI context for now.
      	(workbook_new): Create the context here.
      	(workbook_command_context_gui): This routine is now the one that
      	returns the command context.
      	* src/gnumeric.h: Added CommandCOntext typedef here.
      	* All files: renamed CmdContext to CommandContext.
      	renamed command_context_gui to workbook_command_context_gui.
      	* src/workbook-view.c: Removed the GUI_CmdContext class setup.
      	* src/command-context.c: Replaced the ad-hoc object system with a
      	GtkObject-based system.
  17. 29 Dec, 1999 1 commit
    • Jody Goldberg's avatar
      - Initial usage of the new exception mechanisms. · f8206c57
      Jody Goldberg authored
      - Improve versioning of the plugins.
      - Some bug fixes.
      1999-12-29  Jody Goldberg <jgoldberg@home.com>
      	* src/workbook-view.c (command_context_gui,
      				command_context_gui_cast) : New functions.
      	* src/workbook.c (workbook_new) : Switch to using the workbook_view
      	  routines to manipulate the undo/redo and paste/paste_special menu
      	* src/func.c (function_iterate_argument_values) : Return an error
      	  for empty/missing arguments.
      	* plugins/*/Makefile.am : Define GNUMERIC_VERSION.
      	* plugins/*/*.c (init_plugin): Take a CmdContext for error reporting.
      	  Call plugin_version_mismatch to do some minimal version matching for
      	  plugins and the running application.
      	* src/Gnumeric.idl : Add PluginProblem.
      	* src/command-context.[ch] (gnumeric_error_splits_array,
      				    command_context_vtbl_init) : New functions.
      	* src/plugin.c (plugin_version_mismatch) : New function.
      	  (plugin_load) : Hard code a GUI context for now.
      	                  Switch to using gnumeric_error_ routines.
      			  Pass a CmdContext to the init_plugin routines.
      			  Only produce an error if the plugin returns -1.
      			  Store the plugin filename.
      	  (plugin_unload) : Free the filename on exit.
      	* *.c : command_context_gui now takes a Workbook argument.
      	      : Switch from gnumeric_no_modify_array_notice
      	                 to gnumeric_error_splits_array in most places.
  18. 20 Dec, 1999 1 commit
    • Jody Goldberg's avatar
      Quick fix for workbooks exiting (and leaking a bit) when an import · d4430e2f
      Jody Goldberg authored
      1999-12-20  Jody Goldberg <jgoldberg@home.com>
      	* src/workbook.c (file_open_cmd) : Handle failed opens.
      	(file_import_cmd) : Handle failed imports.
      	* src/item-bar.c (item_bar_start_resize) : Add resize marker on the
      	  other side of the row/col being resized.
      	(item_bar_init) : Init the marker to NULL.
      	(item_bar_end_resize) : Clear the marker.