Commit Graph

211 Commits

Author SHA1 Message Date
wp_xxyyzz
4df9e5dc9b fpspreadsheet: Fix reading of numbers formatted as text (@). See http://www.pilotlogic.com/sitejoom/index.php/forum/pl-fpspreadsheet/3656-pl-fpspreadsheet-wrong-reading-libre-office-calc-file
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5243 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-10-05 22:02:41 +00:00
wp_xxyyzz
863be778f9 fpspreadsheet: Add row height type to row record to distinguish custom from auto-calculated row heights. Add grid property AutoCalcRowHeights to use pre-calculated row height instead of always automatically recalculating row heights.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5233 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-10-01 12:20:18 +00:00
wp_xxyyzz
ac9245401a fpspreadsheet: Add workbook option boWriteZoomFactor and update xls, xlsx and ods writers. Extend zoom demo by saving command. Add define CALC_ALL_ROWHEIGHTS to fpspreadsheetgrid.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5230 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-09-28 16:35:39 +00:00
wp_xxyyzz
f01a005300 fpspreadsheet: Read/write zoom factor from/to xlsx file.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5226 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-09-28 05:18:08 +00:00
wp_xxyyzz
c639d3f13d fpspreadsheet: Modified virtual mode (VirtualColCount, VirtualRowCount and OnWriteCellData were moved from workbook to worksheet). NOTE: THIS BREAKS EXISTING CODE USING VIRTUAL MODE.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4968 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-07-14 19:43:15 +00:00
wp_xxyyzz
5782410686 fpspreadsheet: Add support for format xlsm
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4967 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-07-14 17:47:48 +00:00
wp_xxyyzz
8ed5356be2 fpspreadsheet: Move check for sheet name length to writer -> Sheet names can be any length now. But saving to Excel will abort if there are more than 31 characters.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4656 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-05-20 21:00:20 +00:00
wp_xxyyzz
313853b6e3 fpspreadsheet: Activate i16n for translation of strings. Add German translation. Some cleanup (hints & warnings).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4592 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-24 22:37:10 +00:00
wp_xxyyzz
a46928c3a3 fpspreadsheet: Fix writing default colwidth to xlsx (was applied only to first column so far).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4576 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-19 16:39:43 +00:00
wp_xxyyzz
ae7cebf901 fpspreadsheet: Avoid regression by new length units by accessing DefaultColWidth and DefaultRowHeights by means of setters/getters. Marked as deprecated though, "official" method is calling workbook's WriteDefaultColWidth/WriteDefaultRowHeight/ReadDefaultColWidth/ReadDefaultRowHeight which get the units as a parameter.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4574 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-19 15:18:49 +00:00
wp_xxyyzz
222427e8f6 fpspreadsheet: Optional calculation of image position based on pixels improves slight distortion of images written for xlsx.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4570 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-18 21:23:09 +00:00
wp_xxyyzz
5b946b751f fpspreadsheet: Add units (mm, cm, in, pts, lines/chars) for column width and row heights. Update all demos (some issues left).
NOTE: This revision breaks existing code if the worksheet's DefaultRowHeight/DefaultColWidth is changed - value must be in millimeters now. Methods for accessing individual row heiths and column widths are fine, but are marked as deprecated, they use the old units. Optionally a unit parameter can be specified.

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4568 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-18 19:50:40 +00:00
wp_xxyyzz
6adaa12975 fpspreadsheet: Add stream variant of TsWorksheet.WriteImage.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4557 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-15 14:04:06 +00:00
wp_xxyyzz
998c8b0dfc fpspreadsheet: Replace workbook's EmbeddedStream by a more general EmbeddedObj storing image width, height and format as well.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4556 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-15 12:29:58 +00:00
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
345f1c6818 fpspreadsheet: Fix Excel error with several images in xlsx file
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4542 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-11 18:38:48 +00:00
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
8a0351fde3 fpspreadsheet: Fix incorrect writing order of merged cells and hyperlinks in xlsx files causing an Excel read error (issue #0029640)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4495 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-02-12 14:04:35 +00:00
wp_xxyyzz
9a35171efd fpspreadsheet: Fix writing of hyperlink displaytext with double-quotation characters in xlsx causing an xml read error. Issue #0029640.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4494 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-02-12 13:41:18 +00:00
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
7ef55a84d9 fpspreadsheet: Fix compilation of fpsspeedtest.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4399 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-12-02 23:24:41 +00:00
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
c22465879e fpspreadsheet: Fix reading non-integer sized fixed panes in xlsx files.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4336 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-09-17 14:48:33 +00:00
wp_xxyyzz
899efef347 fpspreadsheet: Fix xlsx reading crashing for non-integer font sizes.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4335 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-09-17 12:51:54 +00:00
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
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
ad6ce37f87 fpspreadsheet: Fix crash when reading xlsx with unexpected formatting of column width node. Add "inlineStr" data type to xlsx reader.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4250 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-08-04 19:27:29 +00:00
wp_xxyyzz
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
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
31090f663a fpspreadsheet: Fix incorrect "Continue" in TsSpreadOOXMLReader.ReadFrom(Stream|File)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4242 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-08-03 21:12:11 +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
126fe87ad1 fpspreadsheet: Fix xlsx writing column widths
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4238 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-08-03 14:18:23 +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
85351db23a fpspreadsheet: Improved replacement of unsupported xlsx border line styles.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4227 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-07-30 16:33:25 +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
9674b291fd fpspreadsheet: Fix ooxml reader crashing if file contains gradient fill definitions.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4223 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-07-30 11:19:50 +00:00