Commit Graph

254 Commits

Author SHA1 Message Date
e76a0394d3 fpspreadsheet: User-provided registration of image formats. Automatic detection of image format from file header.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4552 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-14 22:04:00 +00:00
2a026867ca fpspreadsheet: Finalize image and headerfooter_image demos. Update readme in other demos folder.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4547 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-13 23:01:12 +00:00
44b8adf293 fpspreadsheet: Activate scaling factor for embedded images.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4546 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-13 22:28:59 +00:00
a5e8d60e81 fpspreadsheet: Add writing of header/footer images to ods.
Reorganize ods header/footer code. 
Fix writing of page margings for ods. 
Fix Excel failing to load file with footer image.
Add header/footer image and image demos.

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4545 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-13 18:15:40 +00:00
d5fb9128ef fpspreadsheet: Write defaultrowheight and defaultcolwidth for Excel formats (don't know how ods stores them...)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4543 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-11 22:42:13 +00:00
8a75b32525 fpspreadsheet: Write embedded images to ods files.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4541 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-11 17:54:29 +00:00
d7bba9bd93 fpspreadsheet: Reading of text format for ods and all Excel (except for biff2)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4540 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-10 11:05:34 +00:00
e4946cf801 fpspreadsheet: Write text format to ods, xlsx, biff8 and biff5
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4539 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-10 10:43:44 +00:00
c8d5e0f95a fpspreadsheet: Add text format. Allow leading apostrophe to prevent conversion of a cell text to numbers.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4538 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-09 21:17:53 +00:00
8abea8d2f7 fpspreadsheet: Support for writing headers/footer images to xlsx. Remove some compiler hints and warnings.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4532 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-08 11:29:13 +00:00
f1c07951dd fpspreadsheet: Move PageLayout to separate unit (fpsPageLayout). Move PrintRanges and RepeatedRows/Cols to PageLayout. Some simplifiations because TsPageLayout is a class now. Prepare for images in header/footer.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4530 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-04 23:01:21 +00:00
58547464d3 fpspreadsheet: Initial support for embedded images. Writer for xlsx. Avoid writing relationship for non-existing files to xlsx. Add "numFmtId=0" to xlsx styles (seems to be mandatory for import to Access).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4528 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-03 19:12:58 +00:00
e3d715a8a8 fpspreadsheet: Fix ods repeated rows/cols unit tests.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4506 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-02-16 10:28:14 +00:00
fdf0f89a66 fpspreadsheet: Reading of ods repeated print columns. Unit tests for repeated rows/cols (not ok, yet).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4505 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-02-15 23:43:17 +00:00
bfac43cabe fpspreadsheet: Add reading of ods repeated print rows.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4504 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-02-15 22:33:24 +00:00
1504384e79 fpspreadsheet: Add reading of print ranges and repeated print cols/rows for xlsx. xlsx unit test for print ranges. Fix reading/writing of worksheets with spaces and special xml entities in the sheet name.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4503 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-02-15 21:12:17 +00:00
ad4813947b fpspreadsheet: Add support for print ranges to ods reader. Add ods unit test for writing and reading print ranges.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4502 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-02-14 21:49:25 +00:00
22c42622a2 fpspreadsheet: Add printranges and repeated header cols/rows (for printing) to worksheet. Implement writing to xlsx and ods. (Request from the forum http://forum.lazarus.freepascal.org/index.php/topic,31496.0.html).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4496 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-02-13 17:45:36 +00:00
aa29b42ebc fpspreadsheet: Add worksheet-BiDiMode. Read/write for Excel5, Excel8, xlsx, ods.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4474 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-01-26 11:26:57 +00:00
8184c4b609 fpspreadsheet: Add cell-based BiDiMode. Read/write to/from biff8, xlsx, ods.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4469 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-01-25 18:55:33 +00:00
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