Commit Graph

234 Commits

Author SHA1 Message Date
b9b381633f fpspreadsheet: Restore usage of a temp file name for the zipper needed by xlsx and ods writers, now defined by GetTempfilename, instead of the constant '___TEMP.TMP___'. This should work even if the current folder is not writable.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4400 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-12-03 11:10:34 +00:00
a0ee8b8933 fpspreadsheet:
- Move BasicReader/Writer from fpspreadsheet.pas to fpsReaderWriter.pas in order to fix circular unit dependence introduced in prev commit. 
- Remove usage of temp file in xlsx and ods stream writers (see forum forum.lazarus.freepascal.org/index.php/topic,30606.msg194818.html).

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4398 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-12-02 22:16:55 +00:00
48c33e0c1c fpspreadsheet: Massive reconstruction of file format registration: it is now possible to add user-defined readers and writers without modifying the fpsspreadsheet sources (--> new unit fpsregfileformats). Add (incomplete) unit for the SYLK file format (---> new unit fpssylk) to show this in the demo project visual/fpsctrls/demo_ctrls. Update all visual demos.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4373 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-10-09 13:27:04 +00:00
535273462f fpspreadsheet: Simpler access to clipboard.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4372 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-10-06 12:01:35 +00:00
f66540336e fpspreadsheet: Giving up on clipboard support for ods file, not working, remove it.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4369 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-10-04 19:25:50 +00:00
6cb04bbcea fpspreadsheet: Simplify clipboard access. Add format "Star Object Descriptor (XML)" for testing communication between LibreOffice and Clipboard.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4368 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-10-04 16:08:00 +00:00
6fb4bb9c9b fpspreadsheet: Introduce additional parameter ("AParam") when saving workbooks.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4367 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-10-04 13:12:46 +00:00
295db4cdda fpspreadsheet: Experiments with ods to/from clipboard
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4362 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-09-26 17:14:10 +00:00
f2f4ce227a fpspreadsheet: Fix formulas in ExcelXMLWriter. Fix excelxmlwrite demo.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4346 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-09-20 21:01:57 +00:00
bf2d6f4417 fpspreadsheet: Readers/writers now use memory streams by default. Add workbook option boFileStream to enforce usage of file streams. Improve fpsSpeadtest, add csv speed test.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4327 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-09-11 17:19:26 +00:00
f9c7e354c5 fpspreadsheet: Clean-up
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4317 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-09-09 13:20:09 +00:00
2b99bad89d fpspreadsheet: Write unzipped xml files of xlsx and ods to a unique temp directory.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4310 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-09-02 09:36:35 +00:00
9bcaed5b25 fpspreadsheet: Fix reading error in ods related to rich-text fonts
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4309 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-08-31 21:32:59 +00:00
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
68d15c38a9 fpspreadsheet: Reading/writing of error values for xlsx and ods (initial implementation was incomplete).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4248 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-08-04 17:01:40 +00:00
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
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
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
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
9bf5e60e90 fpspreadsheet: Initial commit of html writer.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4218 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-07-28 22:13:48 +00:00
5e0bd6453d fpspreadsheet: Fix incorrect writing of rich-text sections by ods if manual line-breaks are present.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4217 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-07-28 21:24:55 +00:00
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
4c43ae6e25 fpspreadsheet: Fix compilation with old Laz 1.2 / fpc 2.6.2
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4197 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-06-28 17:40:06 +00:00
e121751361 fpspreadsheet: Reactivate the expression parser test cases which were commented (and forgotten) some time ago. Activate missing argument tests. Add some "exotic" formulas. All passed.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4186 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-06-08 17:03:55 +00:00
0d7bdfa06c fpspreadsheet: Move TsCellFormatList from fpsTypes.pas to fpsClasses.pas. Updated chm help file after proof-reading.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4173 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-06-01 19:58:26 +00:00
f8f72e3847 fpspreadsheet: Make number format parser independent of workbook. Some cleanup.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4167 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-31 16:06:22 +00:00
e2ddc7c705 fpspreadsheet: Extend number format parser to accept the keyword "General" in custom formats
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4161 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-29 21:35:07 +00:00
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
8adf987bf9 fpspreadsheet: Better detection of fraction format by numberformat action. Some clean-up.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4145 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-19 16:18:01 +00:00
2d35913169 fpspreadsheet: Add support for number formats splitting off thousands, (Excel syntax "0.0,"), millions ("0.0,,"), etc.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4130 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-15 17:33:24 +00:00
400ffe6431 fpspreadsheet: Fix writing of header/footer fonts to ods files. Some cleanup.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4127 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-12 20:51:18 +00:00
1b4ae3956e fpspreadsheet: Fix shadow attribute of header/footer font in ods
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4125 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-11 16:06:04 +00:00
6a84c55899 fpspreadsheet: Fix pagelayout unit test. Passed now.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4124 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-11 14:29:55 +00:00
47db427771 fpspreadsheet: Add header/footer parser for conversion between Excel and ODS header/footer. Still some bugs.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4121 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-09 22:40:59 +00:00
12d3dae6ed fpspreadsheet: Add font support for headers/footers from ods files
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4116 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-05 17:38:39 +00:00
116b522290 fpspreadsheet: Add unit tests for page layout headers and footers.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4114 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-04 21:14:29 +00:00
4e420fa876 fpspreadsheet: Add unit tests for some more page layout properties (Fit width/height to pages, start page number) (completing the first 1000 test cases...)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4113 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-04 17:38:56 +00:00
48eaf9d6a0 fpspreadsheet: Add pagelayout testcases for page margins.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4111 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-03 21:41:27 +00:00
dfa4df2c1e fpspreadsheet: Write page layout to ods. Fix some page-layout-related bugs for ooxml.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4109 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-02 23:04:59 +00:00
3902f75dfc fpspreadsheet: Read page layout from ods file (some simplifications, though)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4107 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-01 22:51:01 +00:00
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
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
3a2b5f2aad fpspreadsheet: Add support for fraction formats having a fixed denominator ("# ?/4" for quarters, etc.)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4101 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-04-29 16:23:07 +00:00
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
06ae0f91dc fpspreadsheet: Fix unreadable xlsx file created by hyperlinkdemo/collectlinks demo project
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4083 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-04-18 17:37:20 +00:00
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
389c4646f5 fpspreadsheet: Improved fraction format parser
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4079 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-04-08 22:43:57 +00:00
5c2b844bb7 fpspreadsheet: Add formatting of numbers as fractions
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4073 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-31 19:01:16 +00:00
04370d76dc fpspreadsheet: Complete hyperlink form. In examples/visual/fpsctrls, open hyperlink URI when hyperlink cell is activated.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4062 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-21 22:38:54 +00:00
beca637d7c fpspreadsheet: Fix shared formulas incorrectly read from xlsx files. Fix formulas being lost when reading xlsx and ods files where formulas had not been calculated at saving.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4058 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-20 23:24:12 +00:00