Commit Graph

133 Commits

Author SHA1 Message Date
wp_xxyyzz
95cc2da283 fpspreadsheet: Fix incorrect handling of cell reference by new forumula INDIRECT(). Add test cases for formula ADDRESS().
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7862 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-11-11 23:43:44 +00:00
wp_xxyyzz
196b787aed fpspreadsheet: Fix Workbook.Clear not clearing metadata.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7599 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-08-11 16:18:47 +00:00
wp_xxyyzz
bbf4b2b092 fpspreadsheet: Add metadata support. Add metadata reader/writer for XLSX.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7577 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-28 12:34:50 +00:00
wp_xxyyzz
e191dd00e5 fpspreadsheet: Support conditional icon set format in worksheet, and in XLSX and ODS file access. Add unit tests for it.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7558 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-23 22:25:24 +00:00
wp_xxyyzz
64b69c2893 fpspreadsheet: Fix compilation issue due to stupid 64-bit fpc not being able to pick correct overload of MinValue. Less hints on 64 bit.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7556 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-22 17:55:17 +00:00
wp_xxyyzz
901b92fa72 fpspreadsheet: Some clean-up: Less hints and warnings.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7555 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-22 09:07:59 +00:00
wp_xxyyzz
6aa2860020 fpspreadsheet: Split more code off of fpspreadsheet.pas to separate include files.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7548 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-16 23:40:11 +00:00
wp_xxyyzz
c8a4e5bf9f fpspreadsheet: Split cell format code off into separate include file.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7545 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-15 21:17:33 +00:00
wp_xxyyzz
178e0e9214 fpspreadsheet: CopyWorksheetFrom now copies also the DefaultRowHeight. Remove deprecated properties DefaultRowHeight and DefaultColWidth (the corresponding Read/Write procedures must be used instead).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7530 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-08 20:06:56 +00:00
wp_xxyyzz
9a4f358ae2 fpspreadsheet: Fix unit conversion error in colwidth calculation. CopyWorksheetFrom() now copies also DefaultFont and DefaultColWidth
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7529 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-08 17:56:08 +00:00
wp_xxyyzz
3189f58ee5 fpspreadsheet: Camelcase some unit names.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7525 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-04 10:32:38 +00:00
wp_xxyyzz
9bfeddaaf5 fpspreadsheet: Add writing of databar conditional formatting to XLSX and fix it for ODS.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7521 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-02 13:35:01 +00:00
wp_xxyyzz
f3437814bf fpspreadsheet: Add writing of color range conditional formatting to XLSX. Support 2-color mode in color ranges.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7520 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-02 10:53:42 +00:00
wp_xxyyzz
006ca0de49 fpspreadsheet: Complete writing of color range conditional formatting to ODS.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7518 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-02 09:56:11 +00:00
wp_xxyyzz
68f2d8718d fpspreadsheet: Elemental DataBars and ColorRange formatting for ODS writer.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7516 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-01 22:15:30 +00:00
wp_xxyyzz
b80085c78d fpspreadsheet: Move conditional format list from worksheet to workbook (to facilitate handling for ODS).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7503 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-06-30 10:45:14 +00:00
wp_xxyyzz
8160638051 fpspreadsheet: Initial commit for conditional formatting. Based on ideas of forum user "abcthing" (https://forum.lazarus.freepascal.org/index.php/topic,50149.0.html).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7492 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-06-25 17:18:32 +00:00
wp_xxyyzz
f8b9d39838 fpspreadsheet: Prepare for new release v1.12: Remove chart support. Set version number to 1.12. Update help files.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7478 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-06-02 11:50:30 +00:00
wp_xxyyzz
5def48c316 fpspreadsheet: Fix display of images inserted in WorksheetGrid under gtk as black areas.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7331 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-03-11 12:34:46 +00:00
wp_xxyyzz
fa4f0c306e fpspreadsheet: Add Worksheet.TabColor support. Update biff8/ooxml/ods readers/writers for it. Add test case for it.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7326 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-02-10 15:23:30 +00:00
wp_xxyyzz
93ebcc497e fpspreadsheet: Fix cell offset when pasting in from clipboard. Patch by DonAlfredo, https://forum.lazarus.freepascal.org/index.php/topic,47965.0.html
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7214 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-01-01 23:43:41 +00:00
wp_xxyyzz
5bd2fd23eb fpspreadsheet: Avoid duplicate assignment of Result in TsWorksheet.ReadAsText. Put Hyperlink code used here in more general context.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7172 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-10-26 11:15:21 +00:00
wp_xxyyzz
535ad46df3 fpspreadsheet: Fix colwidth issue causing the reader's FixCols to delete all col records.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7091 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-07-31 20:46:07 +00:00
wp_xxyyzz
d9a8c87eef fpspreadsheet: Protect colwidth/rowheight when col/row is hidden.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7079 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-07-27 20:41:09 +00:00
wp_xxyyzz
aece082d53 fpspreadsheet: Read/write PageBreaks in xlsx format, write in Excel2003/xml format.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7069 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-07-23 23:10:20 +00:00
wp_xxyyzz
6fb1f76bc2 fpspreadsheet: Introduce enum field "Options" of TRow and TCol records to replace boolean "Hidden". Prepare for new "PageBreak" option.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7068 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-07-23 14:41:55 +00:00
wp_xxyyzz
47e9e05399 fpspreadsheet: Refactor dialects in formula parser.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7067 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-07-22 17:49:17 +00:00
wp_xxyyzz
42926f53d3 fpspreadsheet: Ignore content detection when a cell is formatted as text (nfText).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7063 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-07-20 20:54:26 +00:00
wp_xxyyzz
e71408fc19 fpspreadsheet: Add worksheet option soAutoDetectCellType
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7059 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-07-20 10:21:39 +00:00
wp_xxyyzz
8e50105ca0 fpspreadsheet: Fix formula parser crashing with an R1C1 formula subtracting cells with a negative relative address.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7051 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-07-18 21:02:44 +00:00
wp_xxyyzz
3b0e46b92c fpspreadsheet: Fix Excel2003/XML format tests.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7050 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-07-18 15:58:16 +00:00
wp_xxyyzz
18afbfdd84 fpspreadsheet: Excel2003/XML reader supports formulas now.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7038 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-07-15 21:00:47 +00:00
wp_xxyyzz
8f706c4a8c fpspreadsheet: Fix writing of RC formulas for Excel2003/XML format.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7037 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-07-15 11:03:34 +00:00
wp_xxyyzz
8ff3813be2 fpspreadsheet: Add format string to number format error messages.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7036 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-07-14 21:14:14 +00:00
wp_xxyyzz
b38dcbe737 fpspreadsheet: Fix index bug in TsWorksheet.SetIndex (reported by forum user "iteh")
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7012 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-06-17 15:09:48 +00:00
wp_xxyyzz
7585c5a3c9 fpspreadsheet: Rework of worksheet sorting, patch by Zoran (https://forum.lazarus.freepascal.org/index.php/topic,45474.msg321648.html).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7011 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-06-17 12:08:12 +00:00
wp_xxyyzz
21b927cc27 fpspreadsheet: Add property Worksheet.Index.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7005 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-06-09 23:15:10 +00:00
wp_xxyyzz
ae1719d0a3 fpspreadsheet: Another fix to default compare procedure for sorting worksheets.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6932 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-05-21 14:26:52 +00:00
wp_xxyyzz
e0213b0848 fpspreadsheet: Make default cell compare procedure public.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6929 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-05-20 11:49:44 +00:00
wp_xxyyzz
dfa57b80e9 fpspreadsheet: Fix infinite loop in Worksheeet sorting when the sorted range contains an empty cell. Make Worksheetgrid.Sort public.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6928 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-05-20 10:13:39 +00:00
wp_xxyyzz
9369e4d3ef fpspreadsheet: Fix cells being pasted in grid from clipboard when worksheet is protected.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6847 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-04-13 20:21:33 +00:00
wp_xxyyzz
a52a6a75a8 fpspreadsheet: Fix worksheet crashing when Font #4 is created.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6829 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-03-06 23:23:57 +00:00
wp_xxyyzz
a6e527d8c1 fpspreadsheet: Add to error log when a file with unknown formula is read.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6821 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-02-27 20:47:33 +00:00
wp_xxyyzz
748fea48a1 fpspreadsheet: Add method TsWorksheet.GetFormula to return the formula associated with a cell.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6818 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-02-24 11:25:28 +00:00
wp_xxyyzz
6858d3da86 fpspreadsheet: Introduce OnCalcWorkbook event to replace the (inefficient) fpspreadsheet workbook calculation strategy by one provided by the user.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6817 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-02-24 10:36:56 +00:00
wp_xxyyzz
495fcb92eb fpspreadsheet: Redo automatic file format detection: Add method CheckFileFormat to each reader for overriding (check file header or whatever).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6764 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-12-18 13:08:58 +00:00
wp_xxyyzz
e65331e881 fpspreadsheet: Improved format detection for user-defined file formats.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6762 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-12-18 09:43:08 +00:00
wp_xxyyzz
02281cd15f fpspreadsheet: Improved auto-format detection (check extension first, check file header when extension test fails). Fix ods reader crashing when extension has been renamed.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6760 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-12-18 00:07:16 +00:00
wp_xxyyzz
d597266e0d fpspreadsheet: Add basic infrastructure for chart support.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6742 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-12-01 23:02:22 +00:00
wp_xxyyzz
eba44b8b45 fpspreadsheet: ODS now can read images with hyperlinks. Fix image reading for new ODS format.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6674 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-10-06 11:23:12 +00:00