Commit Graph

34 Commits

Author SHA1 Message Date
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
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
400ffe6431 fpspreadsheet: Fix writing of header/footer fonts to ods files. Some cleanup.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4127 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-12 20:51:18 +00:00
4e420fa876 fpspreadsheet: Add unit tests for some more page layout properties (Fit width/height to pages, start page number) (completing the first 1000 test cases...)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4113 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-04 17:38:56 +00:00
dfa4df2c1e fpspreadsheet: Write page layout to ods. Fix some page-layout-related bugs for ooxml.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4109 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-02 23:04:59 +00:00
3902f75dfc fpspreadsheet: Read page layout from ods file (some simplifications, though)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4107 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-01 22:51:01 +00:00
e66caefbe0 fpspreadsheet: Add headers and footers to the pagelayout record, implemented for all Excel formats (reading & writing).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4104 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-01 15:14:25 +00:00
82117326a4 fpspreadsheet: Add some more page layout properties (page size, orientation etc) for all Excel and ods formats (ods implementation, however, not correct at the moment).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4103 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-04-30 21:55:55 +00:00
4f520e0bf2 fpspreadsheet: Add PageLayout record to Worksheet; implement reading and writing of page margins for xlsx.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4102 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-04-29 20:00:07 +00:00
3a2b5f2aad fpspreadsheet: Add support for fraction formats having a fixed denominator ("# ?/4" for quarters, etc.)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4101 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-04-29 16:23:07 +00:00
de39db4c01 fpspreadsheet: Fix comiliation error w/ fpc-trunk (issue 0027978)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4099 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-04-27 09:44:21 +00:00
f5c1eb21cb fpspreadsheet: Add dialog for number format selection to examples folder. Fix grid forgetting current number format after editing cell content.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4095 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-04-26 16:24:19 +00:00
c3da3fa60c fpspreadsheet: More general handling of conditional colors in number format strings.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4091 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-04-21 09:35:58 +00:00
cd397b64d5 fpspreadsheet: Remove TsNumberFormatDialect, not needed by number format parser any more. Fix some issues in visual demos related to number formats.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4089 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-04-19 22:03:33 +00:00
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
5c2b844bb7 fpspreadsheet: Add formatting of numbers as fractions
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4073 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-31 19:01:16 +00:00
d5e7867abd fpspreadsheet: Introduce read/write flag to indicate that workbook is currently being read or written. Avoid calculation of formulas during reading (--> signficant speed-up of reading of large files)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4030 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-14 22:23:43 +00:00
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
2d76afb541 fpspreadsheet: Unit tests for hyperlinks. Some issues left.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4002 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-08 00:50:10 +00:00
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
2c63f357de fpspreadsheet: Move InitFormatRecord from unit fpstypes to fpsutils. Add enumeratortests to spreadtestcli.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3992 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-05 10:54:06 +00:00
7e52faa49f fpspreadsheet: In fpspreadsheet.pas, extract cells AVLTree to fpsclasses.pas. Implement enumerator for the avl trees. Add unit tests for cell and comment enumeration.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3988 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-04 17:30:59 +00:00
58031aba3a fpspreadsheet: Modify hyperlink infrastructure to support non-label cells as well. Add hyperlinks to biff8 reader. Show hyperlink tooltip in TsWorksheetGrid.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3971 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-28 23:46:08 +00:00
5d939e5821 fpspreadsheet: Write hyperlinks to xlsx files. Some restructuring of the hyperlink record.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3961 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-24 16:57:36 +00:00
20ad9c24f2 fpspreadsheet: read hyperlinks from xlsx files
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3957 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-23 22:51:42 +00:00
70b859530f fpspreadsheet: Improved user interface in TsSpreadsheetGrid for clicks on hyperlink cells.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3956 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-23 18:50:29 +00:00
4f6184f243 fpspreadsheet: Prepare infrastructure for cell hyperlinks
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3955 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-22 23:38:28 +00:00
eddf623803 fpspreadsheet: Restructure merged cells. Info on merged cells is no longer stored in cell, but in separate avltree, FMergedCells. Unit tests ok.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3954 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-22 00:12:16 +00:00
3d3c0e766f fpspreadsheet: Extend BIFFExplorer to show details on hyperlink and hyperlink tooltip records in BIFF8.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3950 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-18 17:33:52 +00:00
dd4e66216a fpspreadsheet: Add background fill styles for cells. Fully implemented for Biff5, Biff8 and OOXML; ODS writes an interpolated solid fill (like Open/LibreOffice); Biff2 supports only the 50% gray black&white fill.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3949 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-17 23:32:00 +00:00
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
ac387f67e4 fpspreadsheet: Improve codepage handling for biff2 and biff2 files.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3924 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-04 18:15:19 +00:00
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
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