Commit Graph

44 Commits

Author SHA1 Message Date
c87afdcdec fpspreadsheet: Redo handling for formulas:
- Allow processing of string formulas (conversion to/from rpn formulas, calculation). 
- Drop cell ContentType cctRPNFormula. 
- Drop field RPNFormulaValue of TCell record. 
- Remove all fekXXXX declarations for sheet functions. Function is specified by name now.
- Complete registration mechanism for user-defined formulas.
Adapt all demos
Test cases working
This commit does not yet support: shared formulas, formulas in ods.


git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3506 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-08-30 18:03:22 +00:00
a043b77519 fpspreadsheet: Remove workbook property ReadFormulas, use option boReadFormulas instead. Update all demos affected. Modify most demos to no longer require the fps package.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3505 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-08-29 15:32:43 +00:00
30569b00c0 fpspreadsheet:
- laz_fpspreadsheet packages does not need to be designtime, so do not register it
- cosmetic: example projects are .lpr not .dpr; reflect in comments



git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3242 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-06-26 07:15:51 +00:00
897ad1d9d2 fpspreadsheet: In TsWorksheetGrid, draw a borderline along frozen panes. Fix black background color appearing when re-saving an fpspreadsheet-created workbook in Excel. Some more extended comments for doc-o-matic.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3224 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-06-23 13:49:12 +00:00
24fac70d0c * fpspreadsheet: add readme.txt files for demos
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3223 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-06-23 11:56:12 +00:00
13a9fb2603 fpspreadsheet: Remove built-in number formats nfSci (not suppored by ods and fpc) and nfAccounting/nfAccountingRed (too much display-oriented, too cumbersome to implement for reading and displaying in the grid). If needed in Excel they can still be written using nfCustom. Update all files and tests for these now no longer existing formats.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3222 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-06-23 09:15:56 +00:00
d99cddeb90 fpspreadsheet: Fix time interval format with custom format string not being written correctly to biff.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3193 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-06-18 08:39:54 +00:00
5bc0898317 fpspreadsheet: Add note to examples\*read to run the *write program if input file does not exist. Activate all commented code in the examples.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3192 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-06-18 08:07:00 +00:00
33a8fdcb43 fpspreadsheet: Row height and column width reading/writing code for ods files complete. Test cases ok, but extremely slow speed of test application for numbertest and datetimetests. Changed units of row heights in worksheet: used to be points, is "lines" now (more consistent user interface - column width is in "standard characters", I prefer these units over centimeters because row heights/column widths become independent of screen pixels per inch this way)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3118 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-05-31 21:04:53 +00:00
d29219fc68 fpspreadsheet: Mark TsSpreadsheet.GetLastColNumber/GetLastRowNumber as deprecated, use GetLastColIndex/GetlastRowIndex instead.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3101 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-05-26 15:27:35 +00:00
f638eb928a fpspreadsheet: Write currency format codes for BIFF5 and BIFF8 (incl. "red" for negatives and "-" for zero).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3053 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-05-17 15:13:08 +00:00
c36a5e80ce fpspreadsheet: Building a number format list which allows to drop most of the restrictions of the previous versions like number of decimal places. New number format "nfCustom" which passes the format string directly to the file.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3044 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-05-14 15:24:02 +00:00
f0928db9f5 fpspreadsheet: Row heights now can be saved to all biff versions. Add unit test case for row heights, ok. Bug fixed in BIFFExplorer with format detection.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3019 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-05-07 18:31:27 +00:00
482eac242a fpspreadsheet: Add support for frozen panes in BIFF5/BIFF8 (BIFF2 not working at the moment), fpSpreadsheetGrid, and BIFFExplorer.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3005 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-05-04 18:07:54 +00:00
b93d9eae0c fpspreadsheet: Add linestyle and linecolor as attributes to cell borders. Works in BIFF8 and BIFF5 (BIFF2 does not support this). Add corresponding unit test cases -> passed.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2999 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-05-03 17:00:00 +00:00
70f1d5c5e8 fpspreadsheet: Implement number/datetime format support for BIFF5 reading/writing (like BIFF8)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2979 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-04-30 21:07:41 +00:00
5e1e29aef8 fpspreadsheet: Show rotated text in fpspreadsheetgrid.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2976 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-04-29 21:58:48 +00:00
34db575967 fpspreadsheet: Implement text rotation for BIFF5. Add text rotation test cases for BIIF5 and BIFF8 (no text rotation in BIFF2 by design). Pass.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2974 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-04-27 15:59:16 +00:00
712e5fb61b fpspreadsheet: Update sample projects
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2973 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-04-25 22:50:29 +00:00
7f7d07f151 + Add support for text/number/date formats in BIFF8/xls.
+ Add support for writing out date/time to non-BIFF8 xls (though as text only for now)
  Slightly modified patch by wp, thanks a lot. 
  See
  http://forum.lazarus.freepascal.org/index.php/topic,22940.msg136761.html#msg136761

Still to do: add test cases for invalid format strings



git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2863 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2013-12-22 14:02:04 +00:00
1389a835d1 Adds excel 8 writting example and starts implementing formatting
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@1264 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2010-07-30 06:44:53 +00:00
519e75d5a6 fpspreadsheet: Implements support to setting if existing files should be overwritten or not
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@993 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-11-08 19:21:23 +00:00
e7fede2029 git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@928 8e941d3f-bd1b-0410-a28a-d453659cc2b4 2009-08-11 15:28:08 +00:00
f3259be492 fpspreadsheet: improves Excel 5 RPN formulas, add ABS and ROUND functions
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@833 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-06-09 21:34:58 +00:00
bb04dbc318 fpspreadsheet: starts implementing formulas. RPN version working for Excel 5
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@832 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-06-09 11:19:10 +00:00
894dbe3c90 Fix Mac OS X compilation
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@811 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-05-26 18:35:18 +00:00
90d327e0ee Patch from Joshy, small fix for OLE
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@810 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-05-26 18:32:09 +00:00
c064101224 Adds epiktimer
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@697 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-02-05 10:21:42 +00:00
1b1a30f00c fpspreadsheet: Improves OpenDocument support
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@695 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-02-03 09:41:17 +00:00
933d8a5b44 fpspreadsheet: Improves OpenDocument support
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@692 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-02-02 09:58:51 +00:00
7e67d5e83e fpspreadsheet: Improves OpenDocument support and moved back to 0-based grid
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@688 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-01-29 13:24:37 +00:00
f8cd84c9ee fpspreadsheet: Improves OpenDocument support and rows/cols are now 1-based
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@686 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-01-29 11:30:38 +00:00
e4abbcffc9 fpspreadsheet: Improves OpenDocument support
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@684 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-01-28 22:36:41 +00:00
8d4562d0ef Adds unicode support in fpspreadsheet
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@683 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-01-28 17:18:04 +00:00
63fc6d8da1 fpspreadsheet: Improves reading excel 5 files
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@658 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-01-11 11:11:54 +00:00
1d2b67596d fpspreadsheet: Initial excel5 reader support.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@657 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-01-10 22:58:00 +00:00
6bc68ea9b5 fpspreadsheet: Starts adding read support
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@656 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-01-10 21:47:59 +00:00
bbe2c54a49 fpspreadsheet: OLE code fully working for big files too
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@654 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-01-08 08:44:34 +00:00
111b3f819c fpspreadsheet: Cross-platform OLE code now works for most spreadsheets
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@653 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-01-07 10:50:16 +00:00
5d89c8cf03 fpspreadsheet: First working ole file generation
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@652 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-01-06 20:29:56 +00:00
99057104e2 fpspreadsheet: Improved OLE storage code
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@651 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-01-06 19:35:08 +00:00
a52fbe2039 Improved ole storage and adds reference documents
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@650 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-01-05 14:43:39 +00:00
d14bd9024d fpspreadsheet: adds lazarus package
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@649 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-01-05 13:34:45 +00:00
4f04afdb1c Initial commit of fpspreadsheet.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@362 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2008-02-24 13:18:34 +00:00