Commit Graph

103 Commits

Author SHA1 Message Date
wp_xxyyzz
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
wp_xxyyzz
6b3a74ea33 fpspreadsheet: Write conditional formats to ExcelXML files (Office 2003)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7522 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-02 22:36:59 +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
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
28e834c330 fpspreadsheet: Avoid writing duplicate code for fixed and conditional formats to ODS file.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7515 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-01 21:16:53 +00:00
wp_xxyyzz
c22cdde14b fpspreadsheet: Support remaining format properties in writing of conditional formats to ODS.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7514 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-01 17:58:29 +00:00
wp_xxyyzz
fba35bacb4 fpspreadsheet: Add to the demo a test of conditional format with two rules in the same cell range
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7512 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-01 16:14:35 +00:00
wp_xxyyzz
efa8009d96 fpspreadsheet: Avoid writing duplicate conditional formatting styles to "styles.xml" of ods file.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7511 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-01 16:08:11 +00:00
wp_xxyyzz
7f80fea142 fpspreadsheet: Support font as conditional formatting style (so far, ODS writer only)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7510 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-01 15:58:30 +00:00
wp_xxyyzz
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
wp_xxyyzz
474ce859da fpspreadsheet: Activate missing conditional formatting conditions in ODS writer (a few issues left)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7508 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-01 13:59:21 +00:00
wp_xxyyzz
54fc098d03 fpspreadsheet: Write some more conditional formatting conditions to ODS.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7507 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-07-01 10:40:36 +00:00
wp_xxyyzz
aff774ebc9 fpspreadsheet: Add writing of conditional formats to ODS (only cfcEqual condition, so far).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7504 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-06-30 10:46:07 +00:00
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
57b0651e64 fpspreadsheet: Cleanup restructuring of previous commit.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7495 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-06-25 17:59:07 +00:00
wp_xxyyzz
1c25309bdf fpspreadsheet: restructure examples/other folder.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7494 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-06-25 17:57:14 +00:00
wp_xxyyzz
e1fc35b13a fpspreadsheet: Add demo for conditional formatting
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7493 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2020-06-25 17:23:36 +00:00
wp_xxyyzz
896c356040 fpspreadsheet: Add demo_protection
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6549 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-07-06 16:38:16 +00:00
wp_xxyyzz
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
wp_xxyyzz
0e4645f9bf fpspreadsheet: Check (and fix) compilation of all demo projects (changed handling of include files in fpc 3.0.4)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6317 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-04-18 11:42:22 +00:00
wp_xxyyzz
ef46ccd90d fpspreadsheet: Add workbook option boIgnoreFormulas for writing unsupported formulas (See forum https://forum.lazarus.freepascal.org/index.php/topic,40146.0.html).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6209 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-02-20 23:02:45 +00:00
wp_xxyyzz
3aba9136ea fpspreadsheet: Add searching in comments. Add demo for searching.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5965 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-06-27 09:18:34 +00:00
wp_xxyyzz
f85d2543ba fpspreadsheet: Make sure that all demos are compiled with -Xg
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5764 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-02-20 17:21:56 +00:00
wp_xxyyzz
ebb9b428ea fpspreadsheet: Set "use unit" flag of fpscell. Update demo_write_formatting to use package instead of path to fpspreadsheet.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5740 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-02-05 21:04:36 +00:00
wp_xxyyzz
3e6dd484f7 fpspreadsheet: Fix compilation issues when fpc version is changed: separate package units into different folders, incorporate code of fpsnumformatparser in unit fpsnumformat and code of fpsregfileformats in units fpsreaderwriter. Check and fix all demos.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5282 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-10-22 20:59:00 +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
9280718d44 fpspreadsheet: Fix xlsx image distortion introduced with new workbook units.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4569 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-18 20:27:17 +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
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
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
wp_xxyyzz
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
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
3eeefd11eb fpspreadsheet: Update readme file in examples/other/.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4171 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-31 20:50:07 +00:00
wp_xxyyzz
cb6433ad15 fpspreadsheet: Add demo how to write all Excel8 colors.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4157 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-28 21:54:05 +00:00
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
c7c8d73179 fpspreadsheet: optimize workbook font infrastructure to avoid that missing font 4 dictated by Excel. Remove UsedFormattingField uffBold (obsolete since supporting fonts).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4015 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-11 22:28:07 +00:00
wp_xxyyzz
9365a1dff2 fpspreadsheet: Reduce support for shared formulas (too many problems...), only reading from xls and xlsx files supported.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3998 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-06 12:12:45 +00:00
wp_xxyyzz
ea36d2e089 fpspreadsheet: Shorten fpspreadsheet.pas by putting NumFormatList and CustomReader/Writer to separate units
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3963 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-25 09:43:37 +00:00
wp_xxyyzz
03efde6cab fpspreadsheet: Rearrange cell comment architecture: to save memory cell comments are now stored in the worksheet's avltree "Comments". Replace cell's "CalcState" by more general "Flags" which signals that a cell contains a comment (to be extended...)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3943 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-15 11:45:08 +00:00
wp_xxyyzz
133bf09eb4 fpspreadsheet: Massive reconstruction: remove formatting attributes of TCell record and collect in TCellFormatList. TCell only has index into this list. Introduce record helpers to keep the old syntax. Reduction of memory consumption per cell by 50%.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3894 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-23 21:54:23 +00:00
wp_xxyyzz
2bf5464fc6 fpspreadsheet: Move type declarations from fpspreadsheet.pas to new unit fpstypes.pas. Update all examples.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3887 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-17 22:57:23 +00:00
wp_xxyyzz
f9dc0c3370 fpspreadsheet: More sorting criteria: case-senstivity, numbers first or text first in case of mixed ranges. Update spready.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3680 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-23 13:38:41 +00:00
wp_xxyyzz
fb8faab20b fpspreadsheet: Fix compilation error introduced yesterday. Fix multi-key sorting which now passes all tests.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3679 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-23 09:07:20 +00:00