ChangeLog 141 KB
Newer Older
1 2 3 4 5
2000-06-05  Michael Meeks  <michael@helixcode.com>

	* ms-excel-read.c (sst_bound_check): Update so we can't miss
	adjacent records and we check for continues.

6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
2000-06-03  Michael Meeks  <michael@helixcode.com>

	* ms-obj.c (ms_read_TXO): fix memory corruption bug with continue.

	* ms-escher.c (ms_escher_read_Blip): update for Oaf.

	* ms-biff.c (ms_biff_query_new): kill merging.
	(ms_biff_merge_continues): kill forever.
	(ms_biff_query_next_merge): rename to (ms_biff_query_next): and
	clean. (ms_biff_query_unmerge): kill.

2000-06-02  Michael Meeks  <michael@helixcode.com>

	* ms-excel-read.c (biff_get_text): hack nasty auto-header
	detection. (read_sst): split from (ms_excel_read_workbook).
	(get_xtn_lens): split from (biff_get_text).
	(get_utf8_chars, get_string, sst_boundcheck): implement.

2000-01-31  Michael Meeks  <mmeeks@gnu.org>

	* ms-obj.c (ms_read_TXO): re-implement to swallow CONTINUEs &
	make safer.

	* ms-biff.c (ms_biff_query_next_merge): hack do_merge = FALSE
	for now; big clean possible later.

	* ms-escher.c (ms_escher_read_Blip): always use image-generic;
	it works, disable writing image files unless debugging.
	(write_file): conditional compile out.
	(ms_escher_get_data): add BIFF_CONTINUE.

2000-01-30  Michael Meeks  <michael@mejm2.dow.cam.ac.uk>

	* ms-excel-read.c (ms_excel_read_sheet): kill blank_sheet_pos.

Michael Meeks's avatar
Michael Meeks committed
41 42 43 44
2000-05-30  Michael Meeks  <michael@helixcode.com>

	* Makefile.am (INCLUDES): kill explicit libole2 include.

Jody Goldberg's avatar
Jody Goldberg committed
45 46 47 48
2000-05-20  Jody Goldberg <jgoldberg@home.com>

        * Release 0.54

49 50 51 52
2000-05-18  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_mergecells) : Produce a warning.

Michael Meeks's avatar
Michael Meeks committed
53 54 55 56 57 58
2000-05-11  Michael Meeks  <michael@helixcode.com>

	* boot.c (excel_load): add basic hooks.

	* excel.h: ditto.

59 60 61 62
2000-05-16  Michael Meeks  <michael@helixcode.com>

	* Makefile.am (INCLUDES): add libole2 include.

Michael Meeks's avatar
Michael Meeks committed
63 64 65 66 67 68
2000-05-11  Michael Meeks  <michael@helixcode.com>

	* *.[ch]: update libole2 includes.

	* Makefile.am (INCLUDES): kill libole2 kludge.

Jody Goldberg's avatar
Jody Goldberg committed
69 70 71 72
2000-05-09  Jody Goldberg <jgoldberg@home.com>

	* Release 0.53

73 74 75 76 77
2000-05-05  Jody Goldberg <jgoldberg@home.com>

	* ms-formula-read.c (ms_excel_parse_formula) : Improve warning when we
	  encounter unknown ptgAttr flags.

78 79 80 81
2000-05-03  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c : Include eval.h to suppress warning.

82 83 84 85 86 87 88 89 90 91 92
2000-05-03  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-write.c (write_cell) : Use parse_pos_init_cell.

	* ms-excel-read.c (ms_excel_read_formula) : No need to manually
	  cleanout the old value.  The various assignment routines take care
	  of that.
	  Honour the recalc flags for expressions.  Array expressions are
	  still unconditionally recalced, but the common case is handled
	  correctly.

Jody Goldberg's avatar
Jody Goldberg committed
93 94 95 96
2000-04-24  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c : format police.

97 98 99 100 101
2000-04-21  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_sheet_insert) : Use cell_set_value
	  rather than cell_set_text to avoid attempting to parse the string.

102 103 104 105 106 107 108 109 110 111 112 113 114
2000-04-20  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_sheet_insert) : formats are no longer
	  associated with individual cells.  Only create a cell if it has
	  content.
	(ms_excel_formula_shared) : Rework to return the expression.  Only set
	  it if it is an array.
	(ms_excel_read_formula) : Use error values for problems not strings.
	  Use cell_set_expr_and_value when possible.
	(ms_excel_read_workbook) : Disable optimization that was culling blank
	  sheets.  It was causing a complete recalc of all loaded books for
	  eavy deleted sheet.

Dan Winship's avatar
Dan Winship committed
115 116 117 118
2000-04-20  Dan Winship  <danw@helixcode.com>

	* ms-escher.c (ms_escher_blip_new): update for changes to bonobo

Morten Welinder's avatar
Morten Welinder committed
119 120 121 122 123 124
2000-04-09  Morten Welinder  <terra@diku.dk>

	* ms-excel-read.c (ms_excel_sheet_append_comment): Constify.
	(ms_excel_sheet_set_comment): Ditto.
	(ms_excel_read_sheet): Plug leak.

125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147
2000-04-08  Jon K Hellan  <hellan@acm.org>

	* ms-excel-read.c (ms_excel_set_xf, ms_excel_read_formula,
	ms_excel_read_sheet):  Use
	gnum_sheet->name_unquoted instead of gnum_sheet->name in debug
	output.
	(ms_excel_read_workbook): Remove unused variable to silence
	warning.

	* ms-excel-write.c (write_externsheets): Output
	gnum_sheet->name_quoted instead of gnum_sheet->name. FIXME: Is
	this correct?
	(write_sheet): Use gnum_sheet->name_unquoted instead of
	gnum_sheet->name in debug output.
	(write_workbook): Output gnum_sheet->name_unquoted instead of
	gnum_sheet->name.

	* ms-formula-read.c (ms_excel_parse_formula): Use
	gnum_sheet->name_unquoted instead of gnum_sheet->name in debug
	output.

	* ms-obj.c (object_anchor_to_position): Ditto.

Jody Goldberg's avatar
Jody Goldberg committed
148 149 150 151 152
2000-04-06  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_workbook) : Move deep freeze/thaw to
	  a higher level.

153 154 155 156 157
2000-04-06  Jody Goldberg <jgoldberg@home.com>

	* ms-formula-read.c (ms_excel_parse_formula) : Adjust to change in
	  value_new_range.

Jody Goldberg's avatar
Jody Goldberg committed
158 159 160 161 162 163
2000-04-04  Jody Goldberg <jgoldberg@home.com>

	* ms-obj.c (ms_obj_read_biff8_obj) : Be more careful about when to
	  dump debug info when the stated record size disagrees with the
	  actual.

Jody Goldberg's avatar
Jody Goldberg committed
164 165 166 167 168 169 170
2000-03-24  Jody Goldberg <jgoldberg@home.com>

	* *.[ch] : Update copywrite years.

	* ms-obj.c (ms_read_OBJ) : improve debug output.
	(ms_obj_read_biff8_obj) : Try a new heuristic for dealing with trailing IMDATA.

171 172
2000-03-23  Jody Goldberg <jgoldberg@home.com>

173 174 175 176 177
	* ms-excel-read.c (biff_xf_data_new) : Support horizontal alignment
	  center_across_selection.

	* ms-excel-write.c (halign_to_excel) : Ditto.

178 179
	* ms-obj.c (object_anchor_to_position) : remove some debug code.

Jon K Hellan's avatar
Jon K Hellan committed
180 181 182 183 184 185
2000-03-23  Jon K Hellan  <hellan@acm.org>

	* boot.c (excel_load): No longer add ".gnumeric" to filename. Set
	save info. Tag filename as MANUAL. We could make it AUTO soon.
	(excel_init): Tag saver as MANUAL.

186 187 188 189 190
2000-03-22  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (biff_xf_data_new) : Add some warnings for
	  unsupported rotated text.

Jody Goldberg's avatar
Jody Goldberg committed
191 192 193 194 195 196 197 198 199
2000-03-21  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-util.c (init_xl_font_widths) : Add Geneva.

	* ms-excel-read.c (biff_xf_data_new) : Have the horizontal alignment
	  type center_across_selection default to 'center' instead.
	(ms_excel_read_workbook) : Be more explicit about NOT supporting 1904
	  dates as yet.

200 201 202 203 204 205 206 207 208 209 210
2000-03-14  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (biff_xf_data_new) : Remove warning about parent
	  styles not == 0.  I finally understand what the semantics of this
	  are.  Style 0 is 'Normal' this test was doing nothing accept
	  discriminating agains 'Comma' and its friends.  We need to extend
	  the gnumeric notion of styles to include the limited form of
	  inheritance embodied by XL.

	* ms-obj.c (object_anchor_to_position) : Be VERY careful.

211 212 213 214 215
2000-03-13  Jody Goldberg <jgoldberg@home.com>

	* ms-obj.c (object_anchor_to_position) : Be more careful handling out
	  of bounds conditions.  Part of bug 7312.

Jody Goldberg's avatar
Jody Goldberg committed
216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233
2000-03-09  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_get_style_from_xf) : Tweak colour
	  selection for contrasting colours.  FIXME : We really need to find
	  something more definative than this guess work.

	* ms-excel-read.c (ms_excel_read_selection) : Do not reset the
	  edit cursor.  It needs more work to be correct.

2000-03-09  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-util.[ch] (lookup_font_base_char_width) : Delete.

	* ms-excel-read.c (ms_excel_get_style_from_xf) : Adjust bottom and
	  right borders to be top & left of neighbouring cells.
	(ms_excel_set_xf) : Ditto.
	(ms_excel_set_xf_segment) : Ditto.

234 235 236 237 238 239 240 241 242 243 244 245 246 247 248
2000-03-05  Jon K Hellan  <hellan@acm.org>

	* ms-excel-write.c (lookup_base_char_width_for_write): Rename to
	init_base_char_width_for_write. Init width and default width.
	(get_base_char_width): Add is_default parameter.
	(write_colinfo, write_default_col_width): Use it.

	* ms-excel-write.h (struct _ExcelSheet): Add base_char_width_default.

	* ms-excel-write.c (excel_font_to_string, excel_font_new,
	excel_font_hash, excel_font_equal, write_font): Handle underline,
	strikethrough.

	* ms-excel-write.h (struct _ExcelFont): Ditto

249 250 251 252
2000-03-05  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_get_style_from_xf) : enable strikethrough.

Jody Goldberg's avatar
Jody Goldberg committed
253 254 255 256
2000-03-01  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (biff_font_data_new) : Fix old typo.

Jody Goldberg's avatar
Jody Goldberg committed
257 258 259 260 261
2000-02-29  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_get_style_from_xf) : Add support for
	  importing underlines.

262 263 264 265 266
2000-02-18  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_get_style_from_xf) : Hard code 'auto'
	  border colours to black for now.  We are not guessing well.

267 268
2000-02-15  Jody Goldberg <jgoldberg@home.com>

269 270
	* ms-obj.c (object_anchor_to_position) : Improve debug output.

271 272 273 274 275 276 277 278 279 280 281 282 283
	* ms-excel-read.c (ms_excel_sheet_new) : Add new member base_char_width_default.
	(print_font_mapping_debug_info) : Delete.
	(lookup_base_char_width_for_read) : Rename init_base_char_width_for_read,
	  and use lookup_font_base_char_width_new to init the width and the
	  default_width.
	(get_base_char_width) : Adjust.
	(ms_excel_read_colinfo) : Width is different from default_width...  Idiots!
	(ms_excel_read_default_col_width) : Ditto.

	* ms-excel-util.c : Add lookup tables for various standard widths of
	  MS fonts.  Use a quick and dirty linear scaling to calculate the
	  widths of arbitrary font sizes.

284 285 286 287 288 289
2000-02-14  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_row) : heights are specified
	  including margins and 1 grid line.  Do not use get_units_net_of_margins.
	(get_units_net_of_margins) : Delete.

290 291 292 293 294
2000-02-13  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_workbook) : Adjust WINDOW size
	  measurements from points to pixels.

295 296 297 298 299 300 301 302 303 304 305 306 307 308 309
2000-02-12  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_default_col_width) : Margins are
	  internal now.
	(ms_excel_read_default_row_height) : Ditto.
	(ms_excel_read_colinfo) : Ditto.
	(ms_excel_read_row) : Adjust to changes in margins and step closer to
	  handling think margins.

	* ms-excel-write.c (write_rowinfo) : Use the size_pts member directly.
	(write_colinfos) :

	* ms-obj.c (object_anchor_to_position) : Adjust to name and semantic
	  changes of size_pixels.  Denominate things in pixels.

310 311 312 313 314 315 316
2000-02-06  Michael Meeks  <michael@helixcode.com>

	* ms-excel-read.c (ms_excel_read_workbook): Move failed sheet removal
	here + add pristine culling instead of 0 byte in sheet header, may
	introduce bugs but will help fix sheet_is_pristine. Fix potential
	sheet object leak. (ms_excel_read_sheet): do not detach in error case.

317 318 319 320
2000-01-30  Jon K Hellan  <hellan@acm.org>

	* ms-excel-write.c (write_sheet): Correct the max no. of rows check.

Jody Goldberg's avatar
Jody Goldberg committed
321 322 323 324 325
2000-01-29  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_workbook) : Correct the error
	  handling.

Jon K Hellan's avatar
Jon K Hellan committed
326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372
2000-01-29  Jon K Hellan  <hellan@acm.org>

	Megacommit.

	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.

	* 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
	format.
	(new_sheet): Return the ExcelSheet. Let caller add it to
	wb->sheets.
	(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
	sheet.
	(ms_excel_check_write): New function. Check if we are able to save
	to the file. Do initialization previously in
	ms_excel_write_workbook.
	(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.

Jody Goldberg's avatar
Jody Goldberg committed
373 374
2000-01-18  Jody Goldberg <jgoldberg@home.com>

Jody Goldberg's avatar
Jody Goldberg committed
375 376 377 378
	* ms-formula-read.c (ms_excel_parse_formula) : Add OPER_UNARY_PLUS.

	* ms-formula-write.c (write_node) : Ditto.

Jody Goldberg's avatar
Jody Goldberg committed
379 380 381 382 383
	* ms-excel-read.c (get_units_net_of_margins) : Return 1 when faced
	  with < 0 sized things.
	(ms_excel_read_row) : Support hidden rows.
	(ms_excel_read_colinfo) : Support hidden columns.

384 385 386 387 388
2000-01-17  Frank Chiulli  <fc-linux@home.com>

	* ms-summary.c (ms_summary_write): Turn on writing out the 
	  DocumentSummaryInformation stream.

Jody Goldberg's avatar
Jody Goldberg committed
389 390 391 392
2000-01-17  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-write.c : Remove unused xml includes.

393 394
2000-01-17  Jody Goldberg <jgoldberg@home.com>

Jody Goldberg's avatar
Jody Goldberg committed
395 396 397
	* ms-chart.c (ms_excel_chart) : Apparently BIFF_NUMBER records show up
	  in charts.

398 399 400 401 402 403 404 405 406
	* ms-excel-read.c (ms_excel_read_workbook) : Improve sizing of
	  window, Use the support for some of the new preferences
	  hiding scrollbars, and notebooktabs.

	* ms-excel-read.c (ms_excel_read_sheet) : Use support for
	  hidden grid lines, hidden formulas, hidden zeros, hidden
	  row/col headers.  Use the information on where the upper left
	  corner is.

407 408 409 410 411 412 413 414 415
2000-01-14  Jon K Hellan  <hellan@acm.org>

	* ms-excel-write.h: (ExcelWorkbook): Make
	sheet->cells an array of arrays.

	* ms-excel-write.c (excel_cell_get): Make inline.
	(excel_cell_get, new_sheet, new_sheet, free_sheet): Make
	sheet->cells an array of arrays.

416 417 418 419 420
2000-01-13  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_workbook) : Move magic scale hack
	  into a single #define.  Use workbook_view_set_size.

421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438
2000-01-10  Jody Goldberg <jgoldberg@home.com>

	* ms-obj.c (ms_read_TXO) : Return the string generated rather than
	  leaking it.
	(ms_read_OBJ) : Don't warn about comments, they are not sheet objects
	  which breaks the whole function of this routine but they are not
	  unexpected.  If we can figur eout how to store the string associated
	  with the TXO nearby with this object and get that cleaned up on
	  time and referencable by obj-ID then we can fix comment import.

	* ms-excel-read.c (ms_excel_read_sheet) : Improve handling for
	  WINDOW1 and warn about more unsupported cases.  Tweak zoom factor
	  by 1.4 to be less ugly. (ICK !  HACK!)
	(ms_excel_read_workbook) : WINDOW2 is a sheet level
	  descriptor.  Add handle for WINDOW1.
	(ms_excel_sheet_new) : ICK!  hard code a scale
	  factor of 1.4 to get things to be less ugly.

439 440 441 442 443
2000-01-05  Jon K Hellan  <hellan@acm.org>

	* ms-excel-write.c (write_colinfos): Fix off by one error.
	(write_sheet_bools): Ditto.

444 445 446 447 448
2000-01-03  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_sheet) : extend support for WINDOW2.
	(ms_excel_read_selection) : Remove hack to set visible location.

449 450 451 452 453 454 455 456
1999-12-30  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_workbook_new) : Return error messages.
	(ms_excel_read_workbook) : If a file is password protected do NOT
	  attempt to read it.

	* boot.c (excel_load) : return error messages.

457 458 459 460 461 462 463
1999-12-23  Jon K Hellan  <hellan@acm.org>

	* ms-excel-write.c (write_bits): Use "The Free Software
	Foundation" as name.

	* excel.h (WRITEACCESS_LEN): Define it.

464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480
1999-12-21  Jon K Hellan  <hellan@acm.org>

	* ms-excel-write.c (write_index, write_db_cell, write_block,
	write_sheet): Write row info records in blocks of 32. Excel was
	unable to read files we made if they were over 517 rows. Limit is
	now pushed to 16544.
	(write_index): Assertion no longer true - removed it. Refer to
	Excel doc page.
	(write_db_cell): Write offsets for all rows in block in single
	record. Add number of rows parameter.
	(write_block): New function. Write a block of rows. Previously
	part of write_sheet, but changed for blocked row info.
	(write_sheet): Move inner loop to write_block.
	(new_sheet): Initialize sheet->cells to 0.
	
	* excel.h (ROW_BLOCK_MAX_LEN): Define.

Michael Meeks's avatar
Michael Meeks committed
481 482 483 484
1999-12-21  Jon K Hellan  <hellan@acm.org>

	* ms-excel-write.c (fixup_fill_colors): Fix minor bug.

485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535
1999-12-17  Jon K Hellan  <hellan@acm.org>

	* ms-excel-write.h (struct _ExcelCol ): define it
	(struct _ExcelSheet): Add base_char_width

	* ms-excel-write.c (log_put_color, palette_get_index,
	gather_palette, write_palette, excel_font_new, excel_font_hash,
	excel_font_equal, after_put_format, map_pattern_index_to_excel,
	halign_to_excel, valign_to_excel, fixup_fill_colors,
	get_xf_differences, log_xf_data, build_xf_data,
	write_xf_magic_record, write_value, write_formula, write_cell,
	write_mulblank, pre_pass): Cosmetics
	(write_font, write_fonts, write_format, write_formats,
	write_xf_record, write_xf, write_workbook): Conform to
	conventional parameter order
	(orientation_to_excel, border_type_to_excel): Make inline
	(write_default_row_height): New function. Write default row
	height.
	(lookup_base_char_width_for_write): New function. Locate font for
	measuring base char width, and call measuring function.
	(get_base_char_width): New function: Return base char width for
	column sizing.
	(write_default_col_width): New function. Write default col width.
	(write_colinfo): New function. Write column info for a run of
	identical columns
	(write_colinfos): New function. Write column info for all columns.
	(write_sheet_bools): Use write_default_row_height,
	write_default_col_width, write_colinfos.
	(write_sheet_bools):
	(write_rowinfo): Write true row height. Add sheet to signature.
	(write_sheet): Add sheet to write_rowinfo call.
	(new_sheet): Initialize base_char_width.

	* ms-excel-util.h: #include <sheet.h>
	(EXCEL_DEFAULT_CHAR_WIDTH): Move here from ms-excel-read.h
	(lookup_font_base_char_width): Declare it.	

	* ms-excel-util.c (lookup_font_base_char_width): New
	function. Measure "base character width" of font. Previously in
	lookup_base_char_width in ms-excel-read.c

	* ms-excel-read.c: #include ms-excel-util.h
	(lookup_base_char_width_for_read): Renamed from
	lookup_base_char_width because of similar, but different function
	in ms-excel-write.c. Split in two. Font locating stays here. Font
	measuring moved to new function lookup_font_base_char_width in
	ms-excel-util.c
	(get_base_char_width): Use lookup_base_char_width_for_read.
	(ms_excel_read_default_row_height): Refer to Excel doc page.
	(ms_excel_read_default_col_width): Ditto

536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586
1999-12-14  Jon K Hellan  <hellan@acm.org>
 
        * ms-excel-write.h (XF_MAGIC, PALETTE_ALSO_BLACK, FILL_MAGIC,
        BORDER_MAGIC): define
        (PALETTE_WHITE, PALETTE_BLACK): Fix typo, they were switched around.
 
        * ms-excel-write.c (put_colors): Include border colors.
        (excel_font_new): Newline to conform to coding style.
        (fonts_get_font): New function. Get font, given index.
        (fonts_free, write_fonts): Use it.
        (write_font): Fix boldstyle typo.
        (formats_get_format): New function. Get format, given index.
        (formats_free, write_format): Use it.
        (xf_get_mstyle): New function. Get mstyle, given index.
        (xf_free): Use it.
        (halign_to_excel): 
        New function. Map horizontal alignment to Excel bitfield
        (valign_to_excel): 
        New function. Map vertical alignment to Excel bitfield.
        (orientation_to_excel): 
        New function. Map text orientation to Excel bitfield.
        (border_type_to_excel): 
        New function. Map border type to Excel bitfield.
        (fixup_fill_colors): 
        New function. Kluge fill foreground and background colors.
        (get_xf_differences): Fill out map of differences to parent style.
        (log_xf_data): 
        New function. Log XF data for a record about to be written. Pulled
        out of write_xf_record.
        (build_xf_data): New function. Build XF data for a style. Pulled
        out of write_xf_record, but uses BiffXFData struct. Add support
        for borders, alignments, wrap, rotation. Change some
        local variable names for consistency with import code.
        (write_xf_magic_record): Comment magic color value.
        (write_xf_record): Change signature, take BiffXFData instead of
        mstyle. Simplify by moving out logging and marshaling. Make more
        complex by writing borders, alignment, wrap, rotation.
        (write_xf): Use xf_get_mstyle, build_xf_data, log_xf_data.
 
        * ms-excel-util.h: Fix typo.
 
        * ms-excel-xf.h: New file for BiffXFData struct def.
 
        * ms-excel-read.c: Move BiffXFData struct def to
        ms-excel-xf.h. Include ms-excel-xf.h. Remove include "border.h" -
        ms-excel-xf.h includes it.
        (ms_excel_get_style_from_xf): Express some bewilderment.
 
        * ms-excel-biff.h: Define enums for horizontal alignment, vertical
        alignment, text orientation, difference bits

587 588 589 590 591 592
1999-12-11  Frank Chiulli  <fchiulli@home.com>

	* ms-summary.c (ms_summary_write): comment out DocumentSummary.

	* boot.c (excel_save): re-enable summary write.

593 594 595 596 597 598 599 600 601 602
1999-12-14 Valerie A Henson  <val@nmt.edu>

	* ms-obj.c: s/dump/ms_ole_dump/

	* ms-biff.c: s/dump/ms_ole_dump/

	* ms-formula-read.c: s/dump/ms_ole_dump/

	* ms-excel-read.c: s/dump/ms_ole_dump/

Michael Meeks's avatar
Michael Meeks committed
603 604 605 606 607
1999-12-09  Jon K Hellan  <hellan@acm.org>

	* ms-excel-write.c (excel_font_hash, excel_font_equal, excel_font_free):
	fixup pointer bits.

608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716
1999-12-08  Jon K Hellan  <hellan@acm.org>

	* ms-excel-write.c: (palette_color_to_int): New function. Convert
	EXCEL_PALETTE_ENTRY to guint.
	(style_color_to_int): New function. Convert StyleColor to guint.
	(log_put_color): New function. Debug log when color added to
	palette
	(palette_put_defaults): New function. Put Excel default colors to
	palette.
	(palette_init): New function. Initialize palette table.
	(palette_free): New function. Free palette table.
	(palette_get_index): New function. Get color index.
	(put_color): New function. Add color to palette.
	(put_colors): New function. Add colors in MStyle to palette
	(gather_palette): New function. Add all colors in workbook to
	palette.
	(write_palette): Use color info from styles. Make void.
	(excel_font_to_string): New function. Return string desc. of font
	(excel_font_new): New function. Make an ExcelFont (font + color).
	(excel_font_free): New function. Free an ExcelFont.
	(excel_font_hash): New function. Hash function for ExcelFonts.
	(excel_font_equal): New function. Compare ExcelFonts.
	(fonts_init): New function. Initialize font table
	(fonts_free): New function. Free font table.
	(fonts_get_index): New function. Get index of ExcelFont
	(after_put_font): New function. Debug log when font is added to
	table.
	(put_font): New function. Add font to table.
	(gather_fonts): New function. Add all fonts in workbook to table.
	(write_font): New function. Write a font to file. Essentially,
	inner loop of the old version of write_fonts.
	(write_fonts): Rewritten. Make void
	(after_put_format): New function. Debug log when format is added
	to table.
	(formats_put_magic): New function. Add builit-in formats to table.
	(formats_init): New function. Initialize format table
	(formats_free): New function. Free format table
	(formats_get_index): New function. Get index of format
	(put_format): New function. Add a format to table
	(gather_formats): New function. Add all formats in workbook to
	table.
	(write_format): New function. Write a format to file. Essentially,
	inner loop of the old version of write_formats.
	(write_formats): Rewritten. Make void.
	(cell_used_map_new): New function. Make bitmap for cells in use.
	(cell_mark_used): New function. Mark cell in use in bitmap.
	(cell_is_used): New function. Return true if cell marked in use in
	bitmap.
	(get_default_mstyle): New function. Get default mstyle of
	sheet. Placeholder function until this info is exported from
	sheet.
	(xf_init): New function. Initialize xf/mstyle table.
	(xf_free): Rewritten. New signature. Release allocated style data.
	(after_put_mstyle): New function. Debug log when MStyle added to
	table.
	(put_mstyle): New function. Add MStyle to table.
	(excel_cell_get): New function. Get ExcelCell record for cell
	position.
	(pre_cell): Constify key. Add cell MStyle to table. Cache some
	info
	(pre_blank): New function. Add MStyle of blank cell to table.
	(pre_blanks): New function. Add MStyles of all blank cells in
	workbook to table.
	(gather_styles): New function. Add all MStyles in workbook to
	table.
	(map_pattern_index_to_excel): New function. Map Gnumeric pattern
	index to Excel ditto.
	(write_xf_magic_record): New function. Essentially, the old
	version of write_xf_record.
	(write_xf_record): Rewritten. Use style info from worksheet.
	(write_xf): Use style info from worksheet. Changed signature.
	(write_value): Let ms_excel_write_debug govern debug logging.
	(write_formula): Add xf parameter. Write true xf index
	(write_cell): ExcelCell parameter instead of Cell, bringing in xf.
	Write true xf index.  Let ms_excel_write_debug govern debug
	logging.
	(write_mulblank): Add xf_list parameter. Write true xf
	index. Remove #define XF_MAGIC. Add debug logging. Add
	ms_biff_put_commit.
	(write_index): Let ms_excel_write_debug govern debug logging.
	(write_sheet): Let ms_excel_write_debug govern debug logging.
	(write_sheet): Use ExcelCell instead of Cell. Pass xf or xf_list
	to called functions.
	(new_sheet): Initialize sheet->cells, sheet->cell_used_map
	(free_sheet): Free sheet->cells, sheet->cell_used_map
	(pre_pass): Rewrite. Change signature
	(write_workbook): Initialize font, format, palette and xf tables.
	Free xf list.
	(ms_excel_write_workbook): Flush debug log at end.

	* ms-excel-write.h: Define TwoWayIndex, ExcelFont, ExcelCell,
	ExcelRow. Redefined Palette, Fonts, Formats, XF. Add cells and
	cell_used_map to ExcelSheet. Add xf to ExcelWorkbook.  Define
	AfterPutFunc. Declare ms_excel_write_debug.  Move #defines from
	ms-excel-write.c. Move function declarations last.

	* ms-excel-util.c New file.
	(two_way_index_new): New function. Make TwoWayTable.
	(two_way_index_free): New function. Destroy TwoWayTable
	(two_way_index_put): New function. Put a key to TwoWayTable
	(two_way_index_replace): New function. Replace key for index in
	TwoWayTable
	(two_way_index_key_to_idx): New function. Find index given key
	(two_way_index_idx_to_key): New function. Find key given index

	* ms-excel-util.h New file.

	* ms-excel-read.c (ms_excel_read_cell): Add \n to debug print.

717 718 719 720
1999-12-06  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-write.c (new_sheet): Update to sheet_get_extent.

Morten Welinder's avatar
Morten Welinder committed
721 722 723 724 725
1999-12-01  Morten Welinder  <terra@diku.dk>

	* ms-excel-read.c (lookup_base_char_width): Plug leaks.
	(biff_xf_data_destroy): Ditto.

726 727 728 729
1999-11-30  Michael Meeks  <mmeeks@gnu.org>

	* boot.c (excel_save): Disable summary info export.

Michael Meeks's avatar
Michael Meeks committed
730 731 732 733 734 735 736 737 738 739
1999-11-30  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c: Add ms_excel_write_debug.

1999-11-30  Jon K Hellan  <hellan@acm.org>

	* ms-excel-read.c (biff_format_data_lookup): Add debug.
	(lookup_base_char_width): add commenting.
	(ms_excel_read_workbook): Add fflush.

Michael Meeks's avatar
Michael Meeks committed
740 741 742 743 744
1999-11-28  Michael Meeks  <mmeeks@gnu.org>

	* gnumeric-chart.c (gnumeric_chart_destroy): check the series
	is valid before freeing.

745 746 747 748 749 750
1999-11-28  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c (biff_name_data_destroy): add comment.

	* ms-chart.c (ms_excel_chart): destroy state.chart.

751 752 753 754 755 756 757 758
1999-11-26  Jody Goldberg <jgoldberg@home.com>

	* ms-formula-read.c (ms_excel_parse_formula) : DOH!
	  why wait to implement the implicit intersetion in the core.
	  We know that this will require such an intersection.  So do
	  the work here.  This results in the same sheet that XL produces
	  if you turn off the 'use labels as names' feature.

759 760 761 762 763 764 765 766 767 768
1999-11-26  Jody Goldberg <jgoldberg@home.com>

	* ms-formula-read.c (ms_excel_parse_formula) : Add support for
	  extended-ptg ElfColV and ElfRowV.  They seem to refer to the
	  use of an implicit vector defined by a column header.
	  ie A1 = 'bob'  A2 = 2 B2 = '=bob^2'
	  The eptg would indicate that 'bob' in B2 refered to the column below
	  A1.  Presumably implicit intersection (not implemented yet) would
	  handle the rest.

769 770 771 772 773
1999-11-25  Jody Goldberg <jgoldberg@home.com>

	* ms-obj.c (object_anchor_to_position) : Use 1/1024 for pre-XL97
	  objects.  Do not scale the margins.

774 775 776 777 778 779
1999-11-23  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (biff_font_data_new) : Improve debug info.
	(ms_excel_get_style_from_xf) : Ditto.
	(ms_excel_set_xf) : Ditto.

780 781 782 783 784 785 786 787
1999-11-22  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (get_units_net_of_margins) : Don't crash when the
	  col/row info is NULL.

	* ms-excel-read.c (ms_excel_get_xf) : Improve error
	  message when faced with invalid xf index.

788 789 790 791 792
1999-11-21  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_selection) : Bug 3609.
	  Make sure the current cell is visible.

Michael Meeks's avatar
Michael Meeks committed
793 794 795 796 797 798 799 800 801 802 803 804 805 806 807
1999-11-19  Jon K Hellan  <hellan@acm.org>

	* ms-excel-read.c (ms_excel_read_row): New funtion: Process a BIFF
	row info record. Previously in ms_excel_read_cell.
	(ms_excel_read_colinfo): New function: Process a BIFF column
	info record. Previously in ms_excel_read_cell.
	(ms_excel_read_cell): Move some code to ms_excel_read_row and
	ms_excel_read_colinfo
	(ms_excel_read_default_row_height): New function: Process a BIFF
	default row height record. Previously in ms_excel_read_sheet.
	(ms_excel_read_default_col_width): New function: Process a BIFF
	default column width record. Previously in ms_excel_read_sheet.
	(ms_excel_read_sheet): Move some code to
	ms_excel_read_default_row_height and ms_excel_read_default_col_width.
	
808 809 810 811 812
1999-11-19  Michael Meeks  <mmeeks@gnu.org>

	* boot.c (excel_probe): Check for the right streams, not just an
	ole file.

813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870
1999-11-18  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c (lookup_base_char_width): kill double init of
	sample & add check.

1999-11-18  Jon K Hellan  <hellan@acm.org>

	* ms-obj.c (ms_parse_object_anchor): Just extract anchor data,
	don't try to convert to pixels. Extracted anchor data has type
	anchor_point[4], i.e. 4 pairs of col/row number and fractions of
	col/row.
	(ms_obj_realize): Now receives uninterpreted anchor data. Thus,
	conversion to position is delayed until the entire sheet has been
	read. Use object_anchor_to_position to interpret. 'anchor'
	variable renamed to 'position'.
	(object_anchor_to_position): New function: Convert an anchor to
	position in points. Based on data interpretation in previous
	version of ms_parse_object_anchor.  Interpret as 256th's rather
	than 1024th's vertically. Base computation on actual cell
	width/height.

	* ms-obj.h (type anchor_point): define it.
	(type MSObj): Change type of anchor from int[4] to
	anchor_point[4]. 
	Update signature of ms_parse_object_anchor.

	* ms-excel-read.h (_ExcelSheet): Add base_char_width member.
	(EXCEL_DEFAULT_CHAR_WIDTH): Define it.
	* ms-excel-read.c (get_substitute_font):
	New function: Try to find a gnome font which matches the Excel font.
	(ms_excel_get_style_from_xf): Use get_substitute_font.
	(ms_excel_sheet_new): Initialize base_char_width to 0, i.e. unknown.
	(print_font_mapping_debug_info): Debug print in separate routine.
	(get_base_char_width): New function: Return base char width for
	column sizing. If not yet known, call lookup_base_char_width to
	find it.
	(lookup_base_char_width): New function. See get_base_char_width.
	(get_row_height_units): New function. We could adjust excel
	heights here, but there seems to be no need.
	(get_units_net_of_margins): New function. Subtract margins from a
	point size.
	(ms_excel_read_cell): 
	case BIFF_ROW: Specify height in points, not pixels.  Use
	get_row_height_units and get_units_net_of_margins. Call
	sheet_row_set_height_units rather than sheet_row_set_height.
	case BIFF_COLINFO: Specify width in points, not pixels.  Scale
	column based on actual font. Use get_base_char_width and
	get_units_net_of_margins. Call sheet_col_set_width_units rather
	than sheet_col_set_width.
	(ms_excel_read_sheet): 
	case BIFF_DEFAULTROWHEIGHT: Handle it. Like BIFF_ROW, but use
	sheet_row_set_internal_height on default style. 
	case BIFF_DEFCOLWIDTH: Handle it. Like BIFF_COLINFO, but use
	sheet_col_set_internal_height on default style. 

	* ms-escher.c (_MSEscherHeader): 
	Change type of anchor to anchor_point[4]

Michael Meeks's avatar
Michael Meeks committed
871 872 873 874
1999-11-18  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c (ms_excel_read_guts): rename.

Jody Goldberg's avatar
Jody Goldberg committed
875 876
1999-11-17  Jody Goldberg <jgoldberg@home.com>

877 878 879 880 881
	* ms-excel-read.c (ms_excel_read_mergecells) : New function.
	  Test parser for merged cells.
	(ms_excel_read_sheet) : Use it.
	(biff_xf_data_new) : Fix typo.

Jody Goldberg's avatar
Jody Goldberg committed
882 883 884 885 886
	* ms-excel-read.c (black_or_white_contrast) : Use new
	  style_color{black,white} functions.
	(ms_excel_palette_get) : Ditto.
	(ms_excel_get_style_from_xf) : Ditto.

Michael Meeks's avatar
Michael Meeks committed
887 888 889 890 891 892
1999-11-17  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c (biff_xf_data_new): Quieten.
	(ms_excel_palette_get): Return black on failure.
	(biff_get_text): quieten various warnings.

Jody Goldberg's avatar
Jody Goldberg committed
893 894 895 896 897
1999-11-16  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_GUTS) : New function.
	(ms_excel_read_sheet) : used here.

898 899 900 901 902 903
1999-11-15  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (biff_xf_data_new) : Add warnings about
	  unsupported alignment and format features.  This explains
	  why travel.xls looks odd.

904 905 906 907 908 909
1999-11-14  Frank Chiulli <fchiulli@home.com>

	* ms-summary.c (set_summary_item) : Process all the sections in a 
	  stream.  Pass the section's PropertySetID to sum_name_to_excel
	  rather than the stream's.

Jody Goldberg's avatar
Jody Goldberg committed
910 911 912 913 914
1999-11-13  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-write.c (write_sheet) : Make static.
	* gnumeric-chart.h (typedef) : Fix prototype.

Michael Meeks's avatar
Michael Meeks committed
915 916 917 918 919
1999-11-09  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c (ms_excel_get_style_from_xf, biff_xf_map_border): 
	Update to new STYLE_BORDER enums.

920 921 922 923
1999-11-08  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (biff_xf_data_new) : Reverse sense on diagonals.

Michael Meeks's avatar
Michael Meeks committed
924 925 926 927 928
1999-11-08  Michael Meeks  <mmeeks@gnu.org>

	* ms-summary.c (ms_summary_read): quieten.

1999-11-08  Frank Chiulli  <fchiulli@home.com>
929

Michael Meeks's avatar
Michael Meeks committed
930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950
	* ms-summary.c :  Added support for DocumentSummaryInformation stream.
	  Added new field, ps_id (Property Set ID), to mapping_t structure and
	  initialized excel_to_gnum_mapping[] appropriately.
	  
	* ms-summary.c (sum_name_to_excel) : New function to convert a summary
	  name to a MsOleSummaryPID.

	* ms-summary.c (read_summary_items) : Added new argument - psid (Property
	  Set ID).  It also checks to see that the summary item is in current
	  Summary stream as identified by psid.  Added support for additional 
	  summary types (boolean, short, time).
	  
	* ms-summary.c (ms_summary_read) : Reads DocumentSummaryInformation 
	  stream and summary items therein.

	* ms-summary.c (set_summary_item) : Processes additional summary types
	  (boolean, int, short, time).

	* ms-summary.c (ms_summary_write) : Now also writes out the
	  DocumentSummaryInformation stream.
	
951 952 953 954 955 956 957 958 959
1999-11-07  Michael Meeks  <mmeeks@gnu.org>

	* boot.c (excel_save): Invert sense of return value to reflect success.

	* ms-excel-read.c (biff_name_data_get_name): Move name parsing
	back here; we have read all the sheets this time so inter-sheet
	references in names work. Add 'inserted' flag (biff_name_data_new):
	Kill returning the name + add comment. Add stuff to TODO.

Jody Goldberg's avatar
Jody Goldberg committed
960 961 962 963 964
1999-11-07  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_set_xf) : Remove debug
	  statement accidentally left in.

965 966 967 968 969 970 971 972
1999-11-06  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (black_or_white_contrast) : Revert to 50% as a
	  contrast boundary (3*0x10000/2) ~= 0x1800

	* ms-excel-read.c (ms_excel_get_style_from_xf) : Add more debug
	  output, and support 0 as a contrast colour.

973 974 975 976 977 978 979 980 981 982 983 984
1999-11-05  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_palette_get) : Split the contrast logic
	  into a new function
	(black_or_white_contrast) : The new function.
	(ms_excel_get_style_from_xf) : Add a hand coded table to decide what
	  colours to contrast with which while importing.
	(biff_xf_data_new) : Fix diagonal border import.
	(ms_excel_workbook_detach) : Do not multiply delete a sheet.

	* ms-chart.c : Adjust to changes in ms_excel_palette_get.

985 986
1999-11-05  Michael Meeks  <mmeeks@gnu.org>

Michael Meeks's avatar
Michael Meeks committed
987 988
	* ms-excel-read.c (ms_excel_get_style_from_xf): update.

989 990 991
	* ms-excel-write.c (write_xf_record): pass MStyle *.
	(xf_lookup): ditto.

992 993 994 995 996 997 998 999 1000
1999-11-03  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (excel_map_pattern_index_from_excel) : Adjust map
	  from XL pattern index to gnumeric pattern index to swap diag and
	  rev-diag.

	* ms-excel-read.c (ms_excel_get_style_from_xf) : Set the pattern on
	  import.

Michael Meeks's avatar
Michael Meeks committed
1001 1002 1003 1004 1005
1999-10-31  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-write.c (new_sheet): Fix silly bug, rows not cols
	for maxy. (write_names): add version precondition.

Michael Meeks's avatar
Michael Meeks committed
1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026
1999-10-30  Daniel Risacher  <magnus@alum.mit.edu>

	* ms-excel-read.c (biff_get_text): tiny fix to debugging code
	(biff_name_data_new): actually return the new data
	(biff_name_data_get_name): Moved code that adds names to the 
	workbook to ms_excel_read_name()
	(ms_excel_read_name): Add name definitions to workbook when 
	definition is read, rather than when used.
	Formatting.

	* ms-formula-write.c (write_ref): minor change to comply with 
  	  spec for references.
	(write_node): Handle OPER_NAME.
	Formatting.
	
	* ms-excel-write.c (write_names): New function.  Writes name 
	  definitions.  Called from write_workbook().
	Formatting.
	
	* ms-excel-write.h: Added names to struct _ExcelWorkbook

1027 1028 1029 1030 1031
1999-10-30  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c (ms_excel_get_xf): kill const.
	(ms_excel_read_cell): initialize range_end.

Jody Goldberg's avatar
Jody Goldberg committed
1032 1033 1034 1035 1036
1999-10-26  Jody Goldberg <jgoldberg@home.com>

	* ms-formula-read.c (FormulaFuncData) : Fix typo for
	SERIESNUM -> SERIESSUM.

1037 1038 1039 1040 1041
1999-10-26  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* ms-formula-read.c (formula_func_data): Fixed the number of
 	arguments in GETPIVOTDATA to two.

Michael Meeks's avatar
Michael Meeks committed
1042 1043 1044 1045
1999-10-24  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c (ms_excel_get_style_from_xf): add another ref.

1046 1047 1048 1049 1050 1051 1052 1053 1054
1999-10-24  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_cell:MULBLANK) : pre-merge the XF
	  records in a mulblank sequence.  Improves load time.

	* ms-excel-read.c (ms_excel_get_style_from_xf) : New function
	  split from ms_excel_set_xf.  It calculates and caches the MStyle
	  associated with an XF record.

Michael Meeks's avatar
Michael Meeks committed
1055 1056 1057 1058
1999-10-22  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c (ms_excel_palette_get): fix leak.

1059 1060 1061 1062
1999-10-18  Morten Welinder  <terra@diku.dk>

	* ms-formula-read.c (ms_excel_parse_formula): Fix for non-shared
 	references to cells below row 256.
1063 1064 1065 1066 1067 1068 1069 1070

	* ms-excel-read.c (ms_excel_sheet_insert): Set XF before sheet_cell_fetch
	for big speedup. (ms_excel_read_formula): ditto.

1999-10-19  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c (ms_excel_get_stylefont ms_excel_set_xf): use new
	'helper' functions.
1071

1072 1073
1999-10-08  Jody Goldberg <jgoldberg@home.com>

Jody Goldberg's avatar
Jody Goldberg committed
1074 1075 1076
	* ms-excel-read.c : More minor tweaking of adjustment ratios.
	  We need some real documentation on this stuff.

1077 1078 1079 1080 1081 1082 1083 1084
	* ms-escher.c (ms_escher_get_data) : Use printf instead of
	  g_return_if_fail.  It makes it easier to debug when the messages ar
	  in line.

	* ms-obj.c (ms_read_OBJ) : Print the object type name whenever
	  possible.
	(ms_obj_read_biff8_obj) : Looks like a PictOpt record in an object
	  signifies that the next BIFF record after the OBJ must be an IMDATA.
Jody Goldberg's avatar
Jody Goldberg committed
1085 1086 1087
	(ms_obj_parse_anchor) : Move the zoom application back here until we
	  split the anchors into distance and cell pairs.  The old code was
	  zooming the col/row distances twice.
1088

Morten Welinder's avatar
Morten Welinder committed
1089 1090 1091 1092
1999-10-08  Morten Welinder  <terra@diku.dk>

	* ms-formula-read.c (ms_excel_parse_formula): Plug leaks.

1093 1094 1095 1096 1097
1999-10-03  Jody Goldberg <jgoldberg@home.com>

	* boot.c (excel_probe) : Only free the MsOle object if it
	  was created successfully.

Michael Meeks's avatar
Michael Meeks committed
1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172
1999-10-02  Jody Goldberg <jgoldberg@home.com>

	* *.c : Ensure that we include config.h first.

	* *.[ch] : Update and add Copyright notices.

1999-09-29  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_cell:MULBLANK) : Insert blanks in
	  reverse order, to decrease the load on the insert routines.

1999-09-26  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_cell:COLINFO) : Seems like
	  XL periodically sends column widths for phantom columns.

1999-10-19  Morten Welinder <terra@diku.dk>

	* ms-formula-read.c (ms_excel_parse_formula): Get row as 16 bit value,
	for both AREA_3D and AREA[N].

1999-10-18  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c (ms_excel_set_xf): Ref count colors correctly.

1999-10-16  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c (ms_excel_set_cell_font): renamed + kill Cell.
	(style_optimize): kill Cell argument.
	(ms_excel_set_cell_xf): use style_attach + kill Cell arg. + renamed.
	(ms_excel_sheet_insert, ms_excel_read_formula),
	(ms_excel_sheet_insert_val): update removing Cell argument.
	(ms_excel_sheet_insert_blank): Create.
	(ms_excel_read_cell): use insert_blank.

1999-10-15  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c (ms_excel_set_cell_xf): Update style creation +
	only setup border if it non NULL, fixup optimization regions.
	(ms_excel_set_cell_font): update + add array argument.
	(style_optimize): split out. (ms_excel_read_sheet): Add post-optimize.

1999-10-13  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c (ms_excel_set_cell_font): New String in style.

1999-10-11  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c (ms_excel_set_cell_xf): better optimize region
	generation.

1999-10-10  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c (ms_excel_sheet_new): Initialize range.
	(ms_excel_set_cell_xf): Add range optimization.
	(ms_bug_get_padding): Kill.

	* ms-excel-read.h (ExcelSheet): Add style_optimize field.

1999-10-09  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_set_cell_xf): Adapt to new Border support.

1999-10-07  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c (ms_excel_set_cell_xf): Large hack to new style
	code. (biff_font_data_get_style_font): kill it.
	(biff_font_data_new): remove setting up fd->style_font.
	(biff_font_data_destroy): kill style_font bits.

1999-10-03  Jody Goldberg <jgoldberg@home.com>

	* boot.c (excel_probe) : Only free the MsOle object if it
	  was created successfully.

1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236
1999-09-29  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_cell:MULBLANK) : Insert blanks in
	  reverse order, to decrease the load on the insert routines.

1999-09-26  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_cell:COLINFO) : Seems like
	  XL periodically sends column widths for phantom columns.

1999-10-19  Morten Welinder <terra@diku.dk>

	* ms-formula-read.c (ms_excel_parse_formula): Get row as 16 bit value,
	for both AREA_3D and AREA[N].

1999-10-18  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c (ms_excel_set_xf): Ref count colors correctly.

1999-10-16  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c (ms_excel_set_cell_font): renamed + kill Cell.
	(style_optimize): kill Cell argument.
	(ms_excel_set_cell_xf): use style_attach + kill Cell arg. + renamed.
	(ms_excel_sheet_insert, ms_excel_read_formula),
	(ms_excel_sheet_insert_val): update removing Cell argument.
	(ms_excel_sheet_insert_blank): Create.
	(ms_excel_read_cell): use insert_blank.

1999-10-15  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c (ms_excel_set_cell_xf): Update style creation +
	only setup border if it non NULL, fixup optimization regions.
	(ms_excel_set_cell_font): update + add array argument.
	(style_optimize): split out. (ms_excel_read_sheet): Add post-optimize.

1999-10-13  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c (ms_excel_set_cell_font): New String in style.

1999-10-11  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c (ms_excel_set_cell_xf): better optimize region
	generation.

1999-10-10  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c (ms_excel_sheet_new): Initialize range.
	(ms_excel_set_cell_xf): Add range optimization.
	(ms_bug_get_padding): Kill.

	* ms-excel-read.h (ExcelSheet): Add style_optimize field.

1999-10-09  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_set_cell_xf): Adapt to new Border support.

1999-10-07  Michael Meeks  <mmeeks@gnu.org>

	* ms-excel-read.c (ms_excel_set_cell_xf): Large hack to new style
	code. (biff_font_data_get_style_font): kill it.
	(biff_font_data_new): remove setting up fd->style_font.
	(biff_font_data_destroy): kill style_font bits.
	
1237 1238 1239 1240 1241 1242
1999-10-02  Jody Goldberg <jgoldberg@home.com>

	* *.c : Ensure that we include config.h first.

	* *.[ch] : Update and add Copyright notices.

1243 1244 1245 1246 1247
1999-09-29  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_cell:MULBLANK) : Insert blanks in
	  reverse order, to decrease the load on the insert routines.

1248 1249 1250 1251 1252
1999-09-26  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_cell:COLINFO) : Seems like
	  XL periodically sends column widths for phantom columns.

1253 1254 1255 1256 1257 1258
1999-09-26  Michael Meeks  <michael@nuclecu.unam.mx>

	* ms-excel-read.c (biff_name_data_new): add sheet scope.
	(ms_excel_read_name): Use the 2nd 'copy' of idx since its the
	only valid one. (biff_name_data_get_name): Create using scope.

Michael Meeks's avatar
Michael Meeks committed
1259 1260
1999-09-26  Michael Meeks  <michael@nuclecu.unam.mx>

1261 1262 1263 1264
	* Makefile.am: remove the 'ole' test program

	* ole.c: Removed, see module libole2 in test/test-ole.

Michael Meeks's avatar
Michael Meeks committed
1265 1266 1267
	* ms-escher.c (ms_escher_read_ClientData): Remove realize & queue
	objects instead. Add precondition on state->sheet.

Michael Meeks's avatar
Michael Meeks committed
1268 1269 1270 1271
1999-09-26  Michael Meeks  <michael@nuclecu.unam.mx>

	* ole.c (ms_biff_query_next_merge, ms_biff_query_new): inline.

1272 1273 1274 1275 1276 1277
1999-09-26  Michael Meeks  <michael@nuclecu.unam.mx>

	* ms-excel-read.c (ms_excel_read_sheet): return FALSE for
	blank sheets: duh. (ms_excel_sheet_destroy): add destroy_objs.
	(ms_excel_read_cell): remove const on lastcol.

1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289
1999-09-25  Michael Meeks  <michael@nuclecu.unam.mx>

	* Makefile.am (ole_LDADD): use libole2.la

	* ms-obj.c (ms_obj_realize): remove object destruction.
	(ms_obj_destroy): add. (ms_excel_sheet_destroy_objs): Create.
	(ms_excel_sheet_realize_objs): remove list free.

	* ms-excel-read.c (ms_excel_read_sheet): add return type
	to save possible cock-up. (ms_excel_read_workbook): only
	realize objects if loaded OK.

Michael Meeks's avatar
Michael Meeks committed
1290 1291 1292 1293
1999-09-25  Michael Meeks  <michael@nuclecu.unam.mx>

	* ole.c (decompress_vba): an idea.
	(dump_vba_module): + hooks.
1294
	
Michael Meeks's avatar
Michael Meeks committed
1295 1296 1297
1999-09-25  Michael Meeks  <michael@nuclecu.unam.mx>

	* ole.c (decompress_vba): remove unused + clean headers.
Michael Meeks's avatar
Michael Meeks committed
1298

1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312
1999-09-25  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_formula) : Improve debug
	  printouts, to facilitate match problems cells to inputs
	  behaviors.
	(ms_excel_read_cell:MULBLANK) : Rework to include last_col
	  and simplify logic on iteration. Plus more debug.
	(ms_excel_read_cell:RSTING) : More debug.
	(ms_excel_read_cell:BIFF_ROW) : Add explicit comment on
	  unit -> pixel scaling factor.
	(ms_excel_read_cell:BIFF_COLINFO) : Ditto.

	* ms-escher.c : Continue work on OPT records.

Jody Goldberg's avatar
Jody Goldberg committed
1313 1314
1999-09-24  Jody Goldberg <jgoldberg@home.com>

1315 1316 1317
	* ms-excel-read.c (ms_excel_read_cell) : Add and document
	  point -> pixel scaling for rows and columns.

Jody Goldberg's avatar
Jody Goldberg committed
1318
	* ms-excel-read.c (ms_excel_palette_get) : Change my guess
1319
	  at what the therhold pseudo-luminosity is.
Jody Goldberg's avatar
Jody Goldberg committed
1320

1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339
1999-09-23  Michael Meeks  <michael@nuclecu.unam.mx>

	* ole.c (enter_dir): Change logic.

1999-09-22  Michael Meeks  <michael@nuclecu.unam.mx>

	* ms-excel-write.c (write_bits): Fix TABID.
	(write_sheet_tail): Add current selected sheet save & V8 WINDOW2
	(write_bits): only save PANEs if we need to.
	(write_fonts): always write 5 fonts instead of 4.
	(write_xf): Add USESELFS.
	(write_sheet): 0x200|INDEX.
	(write_sheet_bools): remove -1 from sheet->maxy for V8.

	* ole.c (do_biff_raw): Remove stream position to help 'diff'.

	* ms-obj.c (ms_obj_realize): Turn off auto-sizing of images to
	tango with improved sizing capable image components.

1340 1341
1999-09-23  Jody Goldberg <jgoldberg@home.com>

1342 1343
	* ole.c (dump_vba) : Remove the escher code.  The new version needs to
	  much context to be useable at this level.
Jody Goldberg's avatar
Jody Goldberg committed
1344
	(enter_dir) : Improve error message, and fix thinko.
1345

Jody Goldberg's avatar
Jody Goldberg committed
1346 1347 1348
	* ms-excel-read.c (ms_excel_read_cell) : Fix importing of column
	  widths.

1349
	* ms-obj.c (ms_obj_realize) : Create a visual placeholder for charts.
1350
	  Check for NULL sheet.
1351

1352 1353
	* ms-escher.c : Lots more OPT record types.
	(ms_escher_read_ClientData) : Only set the blip type
1354 1355
	  if we are a picture.

Michael Meeks's avatar
Michael Meeks committed
1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367
1999-09-21  Michael Meeks  <michael@nuclecu.unam.mx>

	* ms-obj.c (ms_parse_object_anchor): remove zoom.
	(ms_obj_realize): Add zoom here.

	* ms-excel-read.c (ms_excel_read_sheet): queue objects for later.
	(ms_excel_read_workbook): Realise sheet objects after read.
	(ms_excel_sheet_new): NULL obj queue ptr.

	* ms-obj.c: Add lots of missing cross references.
	(ms_excel_sheet_realize_objs): Implement.

1368 1369 1370 1371 1372
1999-09-21  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_workbook) : Prefer 'workbook' to
	  'book' so that we use Biff8 for dual stream files.

1373 1374
	* ms-obj.c : Add some #ifndef NO_DEBUG_EXCEL

1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406
1999-09-20  Michael Meeks  <michael@nuclecu.unam.mx>

	* ms-formula-write.c (formula_cache_new_std): Split.
	(get_formula_index): cleaned. (write_funcall): Split from
	(write_node): in preparation for more lovely complexity.
	(formula_cache_new_ename): create. (write_string): constify
	(write_node): Improve integer writing efficiency.

	* ms-excel-write.c (write_sheet_bools): Added write.
	(biff_put_text): constify. (new_sheet): clean debug.

	* ms-formula-write.c (ms_formula_build_pre_data, ms_formula_write_pre_data): 
	stub.

	* ms-excel-write.c (write_workbook): Fix _loads_ of leaks.
	(free_sheet): create. (pre_pass): pre-pass of the workbook's sheets.
	(pre_cell): Scan cells for interesting things.

	* excel.h: remove cache stuff.

	* ms-formula-write.h: move it here.

	* ms-formula-write.c (get_formula_index, cache_init/shutdown): work
	on a per sheet basis.

	* boot.c (excel_shutdown, excel_init): remove formula cache.

	* ms-excel-write.h: Add formula cache.

	* ms-escher.c (ms_escher_read_Blip): Add support for image-generic
	for jpeg, move DIB to a safe place.

Michael Meeks's avatar
Michael Meeks committed
1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417
1999-09-20  Michael Meeks  <michael@nuclecu.unam.mx>

	* ole.c: massive, huge, big clean to new API; ahh that feels good,
	add 'help' command. Break escher debug for now.

	* Makefile.am: re-enabled 'ole'
	
	* ms-biff.h: removed all mention of quirks.

	* ms-biff.c (ms_biff_query_copy): dangerous: removed, clean quirk stuff.

1418 1419 1420
1999-09-20  Jody Goldberg <jgoldberg@home.com>

	* ms-obj.[ch]: Remove a few #if ENABLE_BONOBO checks 
1421 1422
	  and add an include for sheet-object.h. Improve debug
	  info.
1423

1424 1425 1426 1427 1428
1999-09-20  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* ms-obj.[ch]: Added a few #if ENABLE_BONOBO checks to make it
 	compile again.

1429 1430 1431 1432
1999-09-20  Jody Goldberg <jgoldberg@home.com>

	* ms-escher.c (ms_escher_read_ClientData) : Handle unknown object
	  types.
1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444

	* ms-summary.c (set_summary_item) : Made static.

	* ms-obj.c (ms_obj_realize) : New function.
	(ms_parse_object_anchor) : Ditto.

	* ms-excel-read.c (ms_excel_read_workbook) : Use
	  ms_obj_realize.
	(ms_excel_read_sheet) : Ditto.
	(ms_excel_read_formula) : Make reading a string more
	  robust, and support length = 0 as a valid string.

Michael Meeks's avatar
Michael Meeks committed
1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461
1999-09-19  Michael Meeks  <michael@nuclecu.unam.mx>

	* Makefile.am: comment out ole.

	* ms-summary.c (sum_name_to_excel): made static.

	* ms-excel-write.c (ms_excel_write_workbook): updated.

	* ms-excel-read.c (ms_excel_read_workbook): use better API.
	(find_workbook): removed.

	* ms-biff.c (ms_biff_query_copy): Updated duplicate.

	* boot.c (excel_probe, excel_save, excel_load): new ole api.

	* ms-excel-write.c (ms_excel_write_workbook): fix leak.

1462 1463 1464 1465
1999-09-18  Morten Welinder  <terra@diku.dk>

	* ole.c (cur_dir, delim): static.

1466 1467
1999-09-18  Jody Goldberg <jgoldberg@home.com>

1468 1469 1470 1471
	* gnumeric-chart.c (gnumeric_chart_destroy) : implement.
	(gnumeric_chart_new) : Create.

	* ms-chart.c (ms_excel_chart) : Init the chart.
1472
	(BC_R(ifmt), BC_R(ai)) : Handle invalid/missing formats.
1473

1474 1475 1476
	* ms-escher.c : More radical changes to support just in time
	  merging.  This seems to solve the last of the problems of which
	  records to merge and which not.  Everything seems to add up.
1477
	(ms_escher_parse) : Enable by default.
1478

1479 1480
	* ms-excel-read.c (ms_excel_workbook_destroy) : Release blips on
	  exit.
1481

1482 1483 1484 1485
1999-09-17  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_workbook_get_sheet) : Make extern.

Michael Meeks's avatar
Michael Meeks committed
1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496
1999-09-15  Frank Chiulli  <fchiulli@home.com>
	
	* plugins/excel/boot.c (excel_save): Add a call to ms_summary_write
	(ms-summary.c) to write out the SummaryInformation stream.

	* plugins/excel/ms-summary.h: Make ms_summary_write public.
	
	* plugins/excel/ms-summary.c (ms_summary_write, sum_name_to_excel,
	set_summary_item): New routines to support writing the 
	SummaryInformation stream.
	
Michael Meeks's avatar
Michael Meeks committed
1497 1498 1499 1500
1999-09-17  Michael Meeks  <michael@nuclecu.unam.mx>

	* ole.c (main, do_draw, dump_escher): dump raw data.

1501 1502
1999-09-17  Jody Goldberg <jgoldberg@home.com>

1503 1504 1505
	* ms-escher.c : Adjust const.
	(ms_escher_read_ClientAnchor) : Yahoo!  figured out object placement !!
	(ms_escher_read_OPT) : Some cleanup of the property names.
1506

1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522
1999-09-16  Michael Meeks  <michael@nuclecu.unam.mx>

	* ms-excel-read.c (ms_excel_read_sheet): add sheet param to _get_drawing
	(ms_excel_read_workbook): ditto & init 'eschers' to NULL.

	* ms-obj.c (ms_obj_read_text): add sheet param to _get_drawing

	* ms-chart.c (BC_W): ditto.

	* ms-escher.c (ms_escher_hack_get_drawing): Add Sheet param.
	(escher_record_new_blip, escher_record_destroy, ms_escher_read_Blip),
	(ms_escher_read_ClientAnchor): Hack up image loading.
	include config.h

	* ms-excel-read.h (_ExcelWorkbook): Add eschers list.

Jody Goldberg's avatar
Jody Goldberg committed
1523 1524 1525 1526 1527 1528 1529 1530 1531
1999-09-16  Jody Goldberg  <jgoldberg@home.com>

	* ms-escher.c (ms_escher_read_CLSID, ms_escher_read_ColorMRU,
		ms_escher_read_SplitMenuColors) : Initial implementation.
	(ms_escher_read_Spgr) : Add names of Shapes.
	(ms_escher_read_ClientAnchor) : Wild guess at what the format is.
	(ms_escher_read_OPT) : Start naming some of the properties.
	(ms_escher_read_SpgrContainer) : be very careful.

1532 1533 1534 1535 1536 1537 1538
1999-09-15  Jody Goldberg  <jgoldberg@home.com>

	* ms-escher.c : Massive re-org.
	* ms-obj.c (ms_obj_read_text_impl) : Export, and improve warning
	  message for TXO.
	(ms_obj_read_text_impl) : The drawing will read the TXO.

1539 1540 1541 1542 1543 1544 1545 1546
1999-09-12  Michael Meeks  <michael@nuclecu.unam.mx>

	* ms-excel-write.c (write_sheet_bools): write grid-lines & margins &
	scads of other bits.

	* ms-excel-read.c (ms_excel_read_sheet): Add preconditions & load
	print info for grid-lines, & scads of other stuff. (margin_read): Create.

Michael Meeks's avatar
Michael Meeks committed
1547 1548 1549 1550 1551 1552 1553 1554
1999-09-11  Michael Meeks  <michael@nuclecu.unam.mx>

	* ms-excel-write.c (write_value): Clean unused 'head'
	(write_sheet_tail): Add zoom factor write.

	* ms-excel-read.c (ms_excel_read_sheet): Add BIFF_SETUP decode.
	Add Zoom factor reading, add lots of printing records & debug dumps.

Jody Goldberg's avatar
Jody Goldberg committed
1555 1556 1557 1558
1999-09-08  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-read.c : Add selection.h

Michael Meeks's avatar
Michael Meeks committed
1559 1560 1561 1562
1999-09-08  Michael Meeks  <michael@imaginator.com>

	* README: More random thoughts to pass the time of day.

1563 1564 1565 1566 1567 1568
1999-09-05  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-write.c (write_value) : Always use mode 2 for ints.
	  Add a comment to the write float code suggesting an extension to use
	  mode 3 for doubles with only 2 digits after the decimal.

1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579
1999-08-26  Michael Meeks  <michael@imaginator.com>

	* ms-escher.c (biff_to_flat_data): Added back the full conditions
	on merging drawing groups.

	* ole.c (dump_escher): Realised it is a vanillaish container.

	* ms-escher.c (BSE_new): Fix silly buglets.
	(esh_header_new, esh_header_next): prettyify;
	(ms_escher_read): Update length type.

1580 1581 1582 1583 1584
1999-08-25  Michael Meeks  <michael@imaginator.com>

	* ms-escher.c (esh_header_next): re-order for clarity.
	(BSE_new): Fiddling with bits: thanks to Caolan.

1585 1586 1587 1588 1589
1999-08-25  Jukka-Pekka Iivonen  <iivonen@iki.fi>

	* ms-formula-read.c (formula_func_data): Fixed the number of
 	arguments in ISPMT to four.

1590 1591 1592 1593 1594
1999-08-20  Michael Meeks  <michael@imaginator.com>

	* ms-formula-write.c (get_formula_index): Added a comment about 
	Excel's add-in formula names.

1595 1596 1597 1598 1599 1600
1999-08-17  Michael Meeks  <michael@imaginator.com>

	* ms-excel-read.[ch]: Remove sheet blank bit.

	* ms-chart.c (BC_R): Remove sheet->blank reference.

Jody Goldberg's avatar
Jody Goldberg committed
1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612
1999-08-16  Jody Goldberg <jgoldberg@home.com>

	* ms-formula-write.c (write_node) : Add OPER_PERCENT
	* ms-formula-read.c (ms_excel_parse_formula) : Ditto.

	* ms-obj.c : Make less verbose.

	* ms-excel-read.c : Add several new biff-types and do more
	  checking for 'odd-balls' with most significant byte == 1.
	  Disable the 'blank sheet' optimization for now to avoid memory
	  errors when a 'blank' sheet gets put into the externsheet hash.

1613 1614 1615 1616 1617 1618
1999-08-16  Jody Goldberg <jgoldberg@home.com>

	* ms-formula-write.c (write_node) : correct typo.
	  We can now write & read samples/logfuns.xls without
	  loosing formulas or values.

1619 1620 1621 1622 1623 1624 1625
1999-08-15  Jody Goldberg <jgoldberg@home.com>

	* ms-excel-write.c (write_value) : Add support for VALUE_BOOLEAN,
	  VALUE_ERROR, VALUE_EMPTY.
	(write_formula) : Ditto.
	* ms-formula-write.c (write_node) : Ditto.

1626 1627 1628 1629 1630
1999-08-15  Morten Welinder  <terra@diku.dk>

	* ms-excel-read.c (ms_excel_read_workbook): First use, then
 	destroy.

1631 1632 1633 1634
1999-08-13  Michael Meeks  <michael@imaginator.com>

	* ole.c (enter_dir): Major re-work, to use paths.

Jody Goldberg's avatar
Jody Goldberg committed
1635 1636 1637 1638 1639 1640
1999-08-12  Jody Goldberg <jgoldberg@home.com>

	* ms-formula-read.c (ms_excel_parse_formula) :
	FORMULA_PTG_PERCENT is expr/100 not expr*100.
	(excel_builtin_formats) : Correct typo.

1641 1642 1643 1644 1645 1646 1647
1999-08-09  Miguel de Icaza  <miguel@gnu.org>

	* boot.c (excel_load): Changed calling conventions.

	* ms-excel-read.c (ms_excel_read_workbook): Adjusted to use the
	new file-open convention

1648 1649 1650 1651 1652
1999-08-08  Michael Meeks  <michael@imaginator.com>

	* ole.c (dump_vba_module): Kill leak & fix logic.
	(dump_vba): destroy correct directory.

Michael Meeks's avatar
Michael Meeks committed
1653 1654 1655 1656 1657 1658 1659 1660
1999-08-06  Michael Meeks  <michael@imaginator.com>

	* ole.c (list_files): Fix so it shows directories...
	(get_file_handle, list_files, really_put, main): Use current_directory.
	(enter_dir): Implemented 'cd' command
	(do_copyout: Implemented splitting (really_get): from (do_get).
	(dump_vba): Started.

1661 1662 1663 1664
1999-08-05  Michael Meeks  <michael@imaginator.com>

	* ms-summary.c (ms_summary_read): Trivial fix to kill warning.

1665 1666 1667 1668 1669 1670 1671 1672 1673
1999-08-02  Jody Goldberg <jgoldberg@home.com>

	* ms-obj.c (ms_obj_read_pre_biff8_obj) : New function to catch
          charts.
	(ms_obj_read_obj) : Use ms_obj_read_pre_biff8_obj.

	* ms-excel-read.c (ms_excel_read_cell) : Catch use of chart
          records when we expect a cell.
	(ms_excel_read_formula) : Clarify error message.
1674
	(biff_name_data_new) : Partial support for local vs global names.
1675 1676
	(biff_name_data_get_name) : Reformat to improve readability.
	(ms_excel_read_formula) : Ditto.
1677 1678 1679 1680 1681 1682 1683

	* ms-chart.c (ms_excel_biff_dimensions) : Don't print unless
          we're debugging.

	* ms-obj.c (ms_obj_read_biff8_obj) : Don't print checkbox link
          unless we're debugging.

1684 1685 1686 1687 1688 1689 1690 1691 1692
1999-07-30  Jody Goldberg  <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_error) : Delete
          (ms_excel_read_cell) : Use VALUE_ERROR, and VALUE_EMPTY.
	  (ms_excel_read_selection) : Split out into seperate function.

	* ms-formula-read.c (ms_excel_parse_formula,
          make_function) : VALUE_ERROR.

Morten Welinder's avatar
Morten Welinder committed
1693 1694 1695 1696 1697 1698
1999-07-31  Morten Welinder  <terra@diku.dk>

	* ms-excel-read.c (ms_excel_read_formula): Kill warning that is no
 	longer valid.
	(ms_excel_read_error): Fix leak that I introduced.

1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712
1999-07-31  Michael Meeks  <michael@edenproject.org>

	* ms-excel-read.c (biff_get_text): Hacked to deal with continues
	nicely.
	(ms_excel_read_workbook): Fixed up nasty version stuff.
	Commented out ms_bug_padd stuff.

	* ms-biff.[ch]: Commented out all padding and quirks stuff.

1999-07-30  Michael Meeks  <michael@edenproject.org>

	* ms-excel-read.c (ms_excel_read_formula): quiet wierd
	warning... why is this suddenly prevalent.

1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723
1999-07-28  Michael Meeks  <michael@edenproject.org>

	* ms-excel-write.c (biff_put_text): kill warnings.

	* ms-escher.c (read_DgContainer, SpgrContainer_new): ditto.

	* ms-biff.c (ms_biff_put_var_next): Remove padding, daft,
	(ms_biff_put_set_quirk): ditto.
	(ms_biff_query_peek_next): Implemented.


1724 1725 1726 1727 1728 1729 1730 1731 1732
1999-07-28  Michael Meeks  <michael@edenproject.org>

	* ms-biff.c (no_quirks, ms_biff_query_new):
	New quirk support :-)
	(ms_bug_get_padding): Moved into ms-excel-read.c
	(ms_biff_put_var_next, ms_biff_merge_continues): Cleaner quirk stuff.
	(ms_biff_put_set_quirk): I pray this is never used =)
	(ms_biff_put_new, ms_biff_put_var_next): Quirky.

1733 1734 1735 1736 1737
1999-07-28  Jody Goldberg  <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_cell) : Correct the error message
          for SST overflow.

1738 1739 1740 1741 1742 1743
1999-07-27  Jody Goldberg  <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_supporting_wb) : Make this
          quieter, and add some comments explaining that we have no idea
          what this does or how it works.

1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755
1999-07-26  Jody Goldberg  <jgoldberg@home.com>

	* ms-chart.c (BC_R(chartline)) : More state checking.
	  (BC_R(legend)) : Implement.
	  (BC_R(series)) : Store series in chart objects.
	  (ms_excel_biff_dimensions) :

	* ms-obj.c : Closer ties with ms-escher.c.

	* ms-formula-read.c : Changes for VALUE_ERROR. COUNTBLANK
	  takes 1 argument.

1756 1757
1999-07-26  Michael Meeks  <michael@edenproject.org>

1758 1759 1760 1761
	* ms-summary.c (ms_summary_read): Update to ms_ole_summary_close.

	* ole.c (do_summary): ditto.

1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776
	* ms-excel-read.c (ms_excel_read_workbook): Comment out
	dependencies freeze/thaw.

	* ms-excel-write.c (write_cell): Update to new PP code.

	* ms-excel-read.c (find_workbook): Remove ms_ole_directory_new.
	(biff_name_data_get_name): Update to new PP code.

	* ole.c (get_file_handle, list_files): ditto.

1999-07-25  Michael Meeks  <michael@edenproject.org>

	* ms-excel-read.c (ms_excel_read_workbook): Add freeze / thaw
	dependencies.

1777 1778
1999-07-22  Michael Meeks  <michael@edenproject.org>

1779 1780
	* ole.c: Major summary hack, cleaned old cruft & made beautiful.

1781 1782
	* ms-summary.c: Re-write to use new summary stuff in libole2.

1783 1784 1785 1786 1787 1788 1789
1999-07-19  Michael Meeks  <michael@edenproject.org>

	* *.[ch]: Big macro prettify. Moved biff type handling macros into
	libole2/ms-ole.h, and renamed:
		s/BIFF_GET_GUINT/MS_OLE_GET_GUINT/g
		s/BIFF_SET_GUINT/MS_OLE_SET_GUINT/g
	
1790 1791 1792 1793 1794 1795 1796 1797
1999-07-14  Michael Meeks  <michael@edenproject.org>

	* ms-summary.c: Big clean, quiet and sensible handling of
	errors.

	* boot.c (excel_load): Put summary call back in.
	Add excel_read_debug, dump summary info if > 0

Michael Meeks's avatar
Michael Meeks committed
1798 1799 1800 1801 1802 1803 1804 1805 1806
1999-07-13  Michael Meeks  <michael@edenproject.org>

	* Makefile.am: Added ms-summary.[ch]

	* ms-summary.[ch]: Created.

	* boot.c (excel_load): Add summary hook.
	Update comments 
	
Jody Goldberg's avatar
Jody Goldberg committed
1807 1808 1809 1810 1811 1812 1813
1999-07-13  Jody Goldberg  <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_formula): Improve handling of failure
	  cases to ensure that we set the values and formats even if formulas
	  get confused.
	(ms_excel_formula_shared): Back out change to set value on error.
	(ms_excel_get_xf) : 0 and 15 may be defaults but we now have their
1814 1815
	  records so no need to treat them specially.  Seems to be no need
	  to check for StyleXF vs CellXF...
Jody Goldberg's avatar
Jody Goldberg committed
1816 1817
	(ms_excel_set_cell_xf) : It may be the default but we have the XF data
	  for it now so USE IT.
1818 1819 1820
	(biff_name_data_new, biff_name_data_destroy) : Const add flag to
	  log NAME vs EXTERNNAME.
	(biff_name_data_get_name) : Remove vile hack for 1 vs 0 based names.
1821 1822
	(ms_excel_read_name) : More version madness.
	(BIFF_BOF) : More detailed version info.
1823 1824

	ms-formula-read.c : ARRRGGGGHHHHH!  both NAME and NAME_X are 1 based.
1825
	(PTG_NAME) : Different versions, very different sizes.
Jody Goldberg's avatar
Jody Goldberg committed
1826

1827 1828 1829
1999-07-13  Michael Meeks  <michael@edenproject.org>

	* ms-excel-read.c (ms_excel_formula_shared): Fixup previous patch.
Michael Meeks's avatar
Michael Meeks committed
1830
	(ms_excel_read_formula): Re-arrange logic.
Michael Meeks's avatar
Michael Meeks committed
1831
	(ms_excel_set_cell_xf): Add check on 'xf' back in ...
1832

1833 1834 1835 1836 1837 1838
1999-07-11  Michael Meeks  <michael@edenproject.org>

	* ms-excel-read.c (ms_excel_read_formula): Catch NULL cell->text
	(ms_excel_formula_shared): Check on cell... & add position to debug.
	(ms_excel_sheet_append_comment): Add paranoid blank text setting.

1839 1840 1841 1842
1999-07-13  Jody Goldberg  <jgoldberg@home.com>

	* ms-excel-read.c (ms_excel_read_workbook SST) : Zero sized strings use
	  3 bytes (length + header) not 2.
Jody Goldberg's avatar
Jody Goldberg committed
1843 1844
	(ms_excel_read_cell LABELSST) : Blank strings should have value
	  wrappers.
1845 1846 1847 1848 1849 1850
	(ms_excel_parse_formula) : Support missing trailing args for
	  builtin functions.

	* ms-formula-read.c : Keep stack by prepending and popping, rather
	  than appending.
	(INDEX) : correct missing number of args.
1851

1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868
1999-07-12  Jody Goldberg  <jgoldberg@home.com>

	* ms-excel-read.[ch] : Remove XF_style_records.  All XF records are
	  kept in one list.  The fixes the indexing problems we've been
	  having with XF records. No more XF_MAGIC_OFFSET !!
	(biff_name_data_get_name) : Pre-Biff5 seems to use 0 based names, post
	  seems to be 1 base ??  Check this.

	* ms-formula-read.c (excel_formula_build_dummy_handler) : New function.
	(make_function) : split out from here and used for external and builtin
	  functions.
	(MATCH) : correct the number of arguments.
	(ms_excel_parse_formula) : The size of the array is stored at the end
	  too.  This fixes formulas with multiple arrays.
	
	* *.[ch] make the data streams const while reading.

Jody Goldberg's avatar
Jody Goldberg committed
1869 1870 1871 1872 1873 1874 1875
1999-07-12  Jody Goldberg  <jgoldberg@home.com>

	* ms-excel-read.c (biff_name_data_get_name) : Off by one error in the
	  range check.  Improve debug notification when something bad happens.
	(ms_excel_get_xf) : Improve debug messages to help find the problem
	  with xf indicies in old files.

Jody Goldberg's avatar
Jody Goldberg committed
1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890
1999-07-12  Jody Goldberg  <jgoldberg@home.com>

	* ms-chart.c : More record types.

	* ms-escher.c : More record types.

	* ms-excel-read.c (ms_excel_formula_shared) : For some reason XL
	  periodicly :
	    - creates a shared formula
	    - declares its use in a range
	    - then doesn't use it in the upper left corner of the range
	    - and refers to the formula by a different cell in the range ??
	(BIFF_PRECISION) : remove dump, and #if 0, for now until gnumeric
	    supports this.

Jody Goldberg's avatar
Jody Goldberg committed
1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902
1999-07-11  Jody Goldberg  <jgoldberg@home.com>

	* ms-excel-read.c (biff_font_data_new) : don't delay creation of
	  style_font.
        (ms_excel_get_font) : new function split from.
	(ms_excel_set_cell_font) : here.
	(ms_excel_get_xf) : new function split from.
	(ms_excel_set_cell_xf) : here.
	(biff_xf_data_new) : dont delay setting the style_format.
	(BIFF_COLINFO) : Attempt to use the XF->font->height as a proxy for
	  charwidth ??  Anyone have a better idea ?

1903 1904 1905 1906 1907 1908 1909
1999-07-10  Jody Goldberg  <jgoldberg@home.com>

	* ms-excel-read.c : BIFF_COLINFO adjust in charwidth magic number to
	  produce column widths that match my screenshot.

	* TODO: updated.

1910 1911 1912 1913