Commit Graph

200 Commits

Author SHA1 Message Date
wp_xxyyzz
62355e2d51 fpspreadsheet: Re-do rich-text format (easier, less code). Fix rich-text issues with utf8 characters.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4257 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-08-08 16:23:49 +00:00
wp_xxyyzz
63f7b01a76 fpspreadsheet: Fix writing of rich-text info for biff5 and biff8 in some special cases.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4249 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-08-04 18:08:10 +00:00
wp_xxyyzz
71fa9ae693 fpspreadsheet: Add redundant information on selected worksheet to xls files (like Excel does). Add code to read/write selected cell in xls, xlsx and ods.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4243 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-08-04 09:42:39 +00:00
wp_xxyyzz
6a6f290fda fpspreadsheet: Read/write name of active worksheet (biff5, biff8, xlsx, ods, visual controls)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4240 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-08-03 19:04:40 +00:00
wp_xxyyzz
7c8e0a8b3d fpspreadsheet: Initial support for reading html files (data only, no formats, no nested tables).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4236 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-08-01 22:11:44 +00:00
wp_xxyyzz
9c0df635f8 fpspreadsheet: Support reading and writing of all additional linetypes of biff8 and ooxml.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4229 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-07-30 19:08:39 +00:00
wp_xxyyzz
b6a8d809bb fpspreadsheet: Support for all line styles of biff8 and ooxml.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4228 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-07-30 17:15:48 +00:00
wp_xxyyzz
954be7d438 fpspreadsheet: Fix writing rich-text to xlsx (Error when Excel opens this file). Fix writing multiline cell texts containing a CR as line ending which is not accepted by xls.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4226 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-07-30 16:28:30 +00:00
wp_xxyyzz
efa58b67c7 fpspreadsheet: Merged cell, hyperlink and row height support for html writer. Fix reading order of rich-text and asian phonetic info for biff8 reader.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4220 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-07-29 17:34:54 +00:00
wp_xxyyzz
42f5ce9be2 fpspreadsheet: Add creation of biff8 commentlist forgotten in previous commit
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4213 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-07-27 22:50:31 +00:00
wp_xxyyzz
a838fe2707 fpspreadsheet: A bunch of updates have run up...
- Activate ReadFromStream from xls5/8, xlsx, and ods readers (issue #0028389)
- Fix ods using correct hyperlink font
- Rich text formatting runs for xls5/8, xlsx, ods (both reading and writing)
- BIFFExplorer: show details of rich-text formatting runs for SST and RSTRING records

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4211 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-07-26 12:40:51 +00:00
wp_xxyyzz
e0b25c8f51 fpspreadsheet: Fix WorksheetGrid hanging if cell text contains a manual line break. Fix reading of new subscript and superscript font properties for biff5 and biff8 (Rich-text support not yet fully working here).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4208 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-07-10 09:13:19 +00:00
wp_xxyyzz
f80c3a9df0 fpspreadsheet: Fix string encoding error observed with fpc3 and non-UTF8RTL.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4202 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-07-03 20:35:12 +00:00
wp_xxyyzz
40644ea5d5 fpspreadsheet: Fix biff8 reader crashing with file containing SST and CONTINUE records and asian phonetic string in SST record.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4178 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-06-04 17:00:21 +00:00
wp_xxyyzz
6eacf13d99 fpspreadsheet: Move all numberformat-related procedures/functions to unit fpsnumformat.pas. Check all demos.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4170 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-31 20:28:25 +00:00
wp_xxyyzz
61a55feef8 fpspreadsheet: Release restriction on max 21 numberformats for writing biff2 files; extra formats not read correctly by Excel although I know from Office97 that there can be more than 21 formats in a biff2 file. Add some more unit tests for number format parser.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4166 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-30 22:09:53 +00:00
wp_xxyyzz
545bd7ed0f fpspreadsheet: Major reconstructor of color management: no more palettes now, use direct rgb colors instead. May break existing code - sorry! Update all demos and unit tests (passed).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4156 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-28 20:08:24 +00:00
wp_xxyyzz
607585d146 fpspreadsheet: some more unit tests for page layout (paper size, page orientation, scaling factor)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4112 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-04 11:01:06 +00:00
wp_xxyyzz
e66caefbe0 fpspreadsheet: Add headers and footers to the pagelayout record, implemented for all Excel formats (reading & writing).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4104 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-01 15:14:25 +00:00
wp_xxyyzz
82117326a4 fpspreadsheet: Add some more page layout properties (page size, orientation etc) for all Excel and ods formats (ods implementation, however, not correct at the moment).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4103 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-04-30 21:55:55 +00:00
wp_xxyyzz
cd397b64d5 fpspreadsheet: Remove TsNumberFormatDialect, not needed by number format parser any more. Fix some issues in visual demos related to number formats.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4089 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-04-19 22:03:33 +00:00
wp_xxyyzz
03b7dedde7 fpspreadsheet: Improved number format parser
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4082 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-04-18 14:58:38 +00:00
wp_xxyyzz
eab9c797ef fpspreadsheet: Add method AddCell to worksheet which does not check if cell already exists. --> some speed-up of reading.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4031 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-14 22:48:38 +00:00
wp_xxyyzz
6a263081e6 fpspreadsheet: Fix biff8 reader not attaching file protocol to absolute path hyperlink
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4027 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-14 22:02:34 +00:00
wp_xxyyzz
c7c8d73179 fpspreadsheet: optimize workbook font infrastructure to avoid that missing font 4 dictated by Excel. Remove UsedFormattingField uffBold (obsolete since supporting fonts).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4015 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-11 22:28:07 +00:00
wp_xxyyzz
9f26fd4b79 fpspreadsheet: Fix test suite to pass all tests in Linux
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4009 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-08 22:13:15 +00:00
wp_xxyyzz
072efe0a95 fpspreadsheet: Fix hyperlinks tests under Linux
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4008 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-08 17:27:52 +00:00
wp_xxyyzz
2d76afb541 fpspreadsheet: Unit tests for hyperlinks. Some issues left.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4002 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-08 00:50:10 +00:00
wp_xxyyzz
9365a1dff2 fpspreadsheet: Reduce support for shared formulas (too many problems...), only reading from xls and xlsx files supported.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3998 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-06 12:12:45 +00:00
wp_xxyyzz
c5f6cbe82d fpspreadsheet: Replace for-to loops by for-in loops if possible. Update example demos.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3991 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-05 10:35:32 +00:00
wp_xxyyzz
23d6bdc557 fpspreadsheet: Fix writing of empty strings to cell. Fix biff8 stream read error of hyperlinks.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3981 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-03 00:06:15 +00:00
wp_xxyyzz
a10546d99b fpspreadsheet: Migrate MergeCells tree to fpsClasses
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3979 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-02 16:50:14 +00:00
wp_xxyyzz
7ad2d347ea fpspreadsheet: Begin migration of code related to AVLTrees to new unit fpsclasses. Hyperlinks and comments trees already migrated.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3978 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-02 12:23:52 +00:00
wp_xxyyzz
5a4bb856f5 fpspreadsheet: Fix TsWorksheet.CopyCell ignoring comments, hyperlinks and merged cells. Fix incorrect handling of trailing zeros of hyperlink strings when reading biff8.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3974 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-01 12:23:14 +00:00
wp_xxyyzz
58031aba3a fpspreadsheet: Modify hyperlink infrastructure to support non-label cells as well. Add hyperlinks to biff8 reader. Show hyperlink tooltip in TsWorksheetGrid.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3971 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-28 23:46:08 +00:00
wp_xxyyzz
b45156a654 fpspreadsheet: Write hyperlinks to xls files (BIFF8 only, feature not supported by others)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3969 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-27 20:23:26 +00:00
wp_xxyyzz
0bfcd5c4f8 fpspreadsheet: Introduce "settings" records for each file format to define parameters needed for reading/writing. This fixes two unit test fails in Ubuntu (only 1 fail left).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3964 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-25 10:55:46 +00:00
wp_xxyyzz
ea36d2e089 fpspreadsheet: Shorten fpspreadsheet.pas by putting NumFormatList and CustomReader/Writer to separate units
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3963 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-25 09:43:37 +00:00
wp_xxyyzz
d005a0c3c9 fpspreadsheet: Fix location of cell comments after insert/delete of rows/cols
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3952 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-19 18:09:47 +00:00
wp_xxyyzz
dd4e66216a fpspreadsheet: Add background fill styles for cells. Fully implemented for Biff5, Biff8 and OOXML; ODS writes an interpolated solid fill (like Open/LibreOffice); Biff2 supports only the 50% gray black&white fill.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3949 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-17 23:32:00 +00:00
wp_xxyyzz
54c2af0154 fpspreadsheet: reformatting, cosmetic changes
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3945 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-15 22:05:20 +00:00
wp_xxyyzz
03efde6cab fpspreadsheet: Rearrange cell comment architecture: to save memory cell comments are now stored in the worksheet's avltree "Comments". Replace cell's "CalcState" by more general "Flags" which signals that a cell contains a comment (to be extended...)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3943 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-15 11:45:08 +00:00
wp_xxyyzz
8e7a3b741a fpspreadsheet: Add unit xlsEscher for writing Microsoft Office shapes needed for cell comments in BIFF8. Writing of comments not yet working. Lots of additions to BIFFExplorer.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3942 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-14 22:27:49 +00:00
wp_xxyyzz
d8a3204045 fpspreadsheet: Clean up
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3933 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-07 22:24:08 +00:00
wp_xxyyzz
39d652bf60 fpspreadsheet: Read cell comments from BIFF8 files.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3928 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-05 11:23:06 +00:00
wp_xxyyzz
629ac7dd00 fpspreadsheet: Remove workbook parameter from the reader's ReadFromXXXX methods to avoid with conflict by workbook passed at construction.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3925 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-04 19:50:50 +00:00
wp_xxyyzz
ac387f67e4 fpspreadsheet: Improve codepage handling for biff2 and biff2 files.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3924 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-04 18:15:19 +00:00
wp_xxyyzz
3113794fab fpspreadsheet: Fix crash when reading a BIFF5 file written by Excel97 (it has data (the directory) beyound the workbook stream which is not expected by the BIFF5/8 readers).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3897 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-24 22:19:55 +00:00
wp_xxyyzz
d9343190a4 fpspreadsheet: Add mission routines of the cell record helper. Some cosmetics. Clean up commented lines from previous commit.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3895 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-24 00:36:10 +00:00
wp_xxyyzz
133bf09eb4 fpspreadsheet: Massive reconstruction: remove formatting attributes of TCell record and collect in TCellFormatList. TCell only has index into this list. Introduce record helpers to keep the old syntax. Reduction of memory consumption per cell by 50%.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3894 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-23 21:54:23 +00:00