Commit Graph

75 Commits

Author SHA1 Message Date
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
2793744bf7 fpspreadsheet: Add reading and writing support for conditional formats in Excel XML files (not yet complete).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7549 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-17 19:50:40 +00:00
52e4cccf80 fpspreadsheet: XLSX reader supports expression conditional format. Add test case for it.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7546 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-16 20:46:21 +00:00
269c684533 fpspreadsheet: Support expression conditional cell formatting by XLSX, Excel-XML and ODS writers.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7541 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-15 16:39:05 +00:00
e14818039f fpspreadsheet: Add more conditional formatting unit tests covering all conditions.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7532 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-09 11:04:37 +00:00
57fc4d5095 fpspreadsheet: Complete of conditional formatting from xlsx. Untested.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7527 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-07 21:48:03 +00:00
9bc1afa59b fpspreadsheet: Add reading of conditional formats for xlsx. Not complete, and still fragile.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7526 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-05 22:45:12 +00:00
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
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
f1421b2b80 fpspreadsheet: Fix ooxml writer for conditional formatting broken in one of previous commits.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7513 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-01 16:26:01 +00:00
724cd6ba30 fpspreadsheet: Fix usage of cell references and formulas in conditional formatting by ods and xlsx writers.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7509 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-01 15:35:48 +00:00
23003e75b3 fpspreadsheet: Fix usage of strings in compare operations for conditional formatting.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7505 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-06-30 20:45:14 +00:00
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
72986ddc75 fpspreadsheet: top10 in conditional formatting. More advanced demo.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7501 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-06-26 16:36:32 +00:00
fbe85d7e44 fpspreadsheet: xlsx writer supports conditional formatting for duplicate/unique values.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7500 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-06-26 11:37:21 +00:00
9a71231010 fpspreadsheet: Add writing of error-related conditional formatting conditions to xlsx writer.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7499 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-06-26 11:18:30 +00:00
8a30aacadb fpspreadsheet: Add writing of text-related conditional formatting conditions to xlsx writer.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7498 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-06-26 10:59:12 +00:00
5578d181a8 fpspreadsheet: Fix usage of format index (dxfId) in writing conditional formatting to xlsx.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7497 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-06-26 09:27:01 +00:00
7f4382a137 fpspreadsheet: Add conditions above/belowAverage to conditional formatting.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7496 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-06-25 23:10:44 +00:00
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
92a0c02e8f fpspreadsheet: Add error log entry when reading xlsx files with non-numeric data in numeric cells, instead of aborting the program. Issue #37055, modified patch by Tulurdes.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7452 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-05-13 05:42:33 +00:00
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
07ea73781b fpspreadsheet: Fix xlsx reader choking on files in which row and cell coordinates are not specified in the xml nodes (https://forum.lazarus.freepascal.org/index.php/topic,48292.msg347711.html)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7321 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-01-28 00:13:13 +00:00
6a1b03adfa fpspreadsheet: Fix ooxml reader choking on files written by Adobe Acrobat X which writes HTML colors with # prefix. https://forum.lazarus.freepascal.org/index.php/topic,47749.msg342501.html.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7207 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-12-12 10:17:39 +00:00
88653ac32d fpspreadsheet: Fix xlsx reader applying hyperlinks to all sheets (https://forum.lazarus.freepascal.org/index.php/topic,46248.msg329067)-
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7089 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-07-30 19:39:09 +00:00
1968f22a50 fpspreadsheet: Fix stupid error in writing row and column page breaks to xlsx file.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7075 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-07-26 15:37:02 +00:00
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
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
347c7328d1 fpspreadsheet: Fix localized AM/PM string appearing in time format strings (https://forum.lazarus.freepascal.org/index.php/topic,46069.msg327309.html#msg327309).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7043 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-07-16 22:11:00 +00:00
1dc7fd8705 fpspreadsheet: Less stringent requirements for presence of localSheetID attributes for names ranges in xlsx files. Issue #34381.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6858 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2019-04-22 18:03:35 +00:00
3f113c63bb fpspreadsheet: Some clean-up
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6769 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-12-25 08:58:16 +00:00
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
d8735a174e fpspreadsheet: Add support for xlsx files written by OpenXML (using namespace x) - see forum https://forum.lazarus.freepascal.org/index.php?topic=43159.msg301884).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6726 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-11-12 23:34:56 +00:00
693ab2f3eb fpspreadsheet: the xlsx writer now can write an image hyperlink.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6672 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-10-05 16:31:14 +00:00
014658c6f2 fpspreadsheet: Read hidden state of row/column records for XLSX and XLS (BIFF5 and BIFF8) formats.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6635 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-09-06 09:47:01 +00:00
02787a6947 fpspreadsheet: Write row/column hidden flag to XLSX, BIFF8 and BIFF2
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6632 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-09-05 23:04:49 +00:00
3e79a95fc1 fpspreadsheet: Fix detection of underlined and strike-through font in xlsx files not written by Excel.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6595 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-08-11 12:44:52 +00:00
089a63532a fpspreadsheet: Redo prev two commits in a more general way.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6590 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-08-11 08:24:08 +00:00
f10b07cd0f fpspreadsheet: Fix detection of word-wrapped cells in xlsx files written by LibreOffice Calc
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6589 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-08-10 22:08:08 +00:00
ec8ada57a7 fpspreadsheet: Fix reading of spurious cell borders of xlsx files written by PlanMaker.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6587 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-08-10 15:12:39 +00:00
9a3ee0016f fpspreadsheet: Fix incorrect right-to-left alignment of xlsx files introduced by prev commit.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6586 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-08-10 15:04:13 +00:00
1c7bd8d915 fpspreadsheet: Relax detection of boolean xml attributes for better reading of xlsx files written by LibreOffice Calc.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6585 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-08-10 14:21:10 +00:00
92f59fbfd1 fpspreadsheet: Prepare for release 1.10
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6547 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-07-06 16:15:51 +00:00
b9979977f6 fpspreadsheet: Fix entering new data in existing formula not erasing formula. Add corresponding unit test cases.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6545 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-07-05 12:51:54 +00:00
29f1533516 fpspreadsheet: Extend fpspreadsheet actions to supply default captions and hints.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6493 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-06-13 21:51:40 +00:00
f3ae814cc5 fpspreadsheet: Fix reading of shared formulas in XLSX.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6458 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-06-04 14:54:02 +00:00
38001d24d7 fpspreadsheet: Less hints and warnings.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6456 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-06-04 11:03:03 +00:00
40fabfc201 fpspreadsheet: Redo storage of formulas: formulas now are stored in a separate tree independent of the cells tree. The field FormulaValue of TCell record was removed. All unit tests passed. Demos updated (issues of speedtest due to SST in BIFF8 found - not related).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6446 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-30 22:15:07 +00:00
d5e5df7485 fpspreadsheet: Rearrange units to better avoid circular unit references. General idea: no unit of the package must "use" fpspreadsheet.pas in the interface section.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6444 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-22 22:21:15 +00:00
8adcbb27cd fpspreadsheet: Fix creation of erratic sheets by XLSX reader if not-yet-existing sheets are referenced in formulas during reading.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6415 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-15 12:05:18 +00:00