d796b836cd
fpspreadsheet: More cosmetics
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3585 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-21 16:50:56 +00:00
b2888a8042
fpspreadsheet: Lots of cosmetics. Updated version of the chm help file.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3583 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-21 00:10:31 +00:00
b43fb99608
fpspreadsheet: Fix reading/writing of cell error values in biff. Insert/delete unit tests with formulas are correct now. Fix crash in BIFFExplorer related to reading of formulas.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3582 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-19 19:44:35 +00:00
4ed3b47628
fpspreadsheet: Add test cases for insert/delete rows into worksheets containing formulas. Issues remaining when cells referred to by the formula are deleted. Add detection of error values to the formula scanner.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3581 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-19 14:22:18 +00:00
abb2847886
fpspreadsheet: Some bug fixes related with inserting/deleting rows through merged cells/shared formula blocks. Still buggy...
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3578 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-18 16:01:45 +00:00
4f941218df
fpspreadsheet: Fix conversion of string to date/time raising an exception in case of invalid date/time strings.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3577 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-18 11:58:51 +00:00
95e03fe87e
fpspreadsheet: Fix deletion of columns/rows of base of shared formula is removed.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3573 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-17 12:39:37 +00:00
b22ab8deba
fpspreadsheet: Move rpn stuff from fpspreadsheet.pas to a new unit fpsRPN.pas. Move translatable strings from fpspreadsheet.pas to a new unit fpsStrings.pas. Make sure that all demos still run in the new environment.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3572 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-17 08:38:31 +00:00
10ad6b7a1a
fpspreadsheet: Delete columns and rows from Worksheet and WorksheetGrid
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3571 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-16 15:03:17 +00:00
e07e322170
fpspreadsheet: Redo internal structure of merged cells (use MergeBase cell instead of neighbor links).
...
Suppress TsWorksheetGrid painting of inner grid lines of merged cells.
Fix inserting columns and rows running through merged cells.
Silence some warnings.
Fix ods reading merged cells incorrectly.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3569 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-15 20:54:39 +00:00
b70cc35da3
fpspreadsheet: Ignore case of sheetname in validation. Better calling convention for un-merging cell ranges.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3554 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-12 14:14:05 +00:00
324588fb04
fpspreadsheet: Validity check for sheet names (test case included)
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3552 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-12 09:38:12 +00:00
84d3ab4fb8
fpspreadsheet: Misc improvements of TsWorksheetGrid, fpsgrid and spready
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3551 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-11 22:57:55 +00:00
92cfcfb208
fpspreadsheet: Some fixes in fpspreadsheetgrid and spready demo (tabcontrol instead of pagecontrol for spreadsheetgrid, hang of TsWorksheetGrid due to bug in new code related to merged cells, updates of inspector, better handling of the file-not-found situation, improved commandline interface for spready).
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3547 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-11 09:49:16 +00:00
66b0b44998
fpspreadsheet: More infrastructure for merged cells
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3538 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-10 16:41:30 +00:00
e277e09850
fpspreadsheet: Beginning with infrastructure for merging of cells
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3534 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-09 15:51:56 +00:00
cfb50bf064
fpspreadsheet: Read default column width and row height from biff and ooxml files
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3532 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-09 11:42:20 +00:00
e9bf681d97
fpspreadsheet: Avoid using column and row records when all column widths and row heights are equal. This fixes Mantis #0026686 .
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3528 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-07 22:25:11 +00:00
ab50c08bd2
fpspreadsheet: Fix shared formula issues with absolute cell references
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3527 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-05 15:41:44 +00:00
ac149b750d
fpspreadsheet: Some cleanup of unused variables.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3526 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-04 18:55:21 +00:00
cbc6beae9a
fpspreadsheet: Writing of shared formulas to biff5 and biff8 is working again now.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3525 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-04 15:27:28 +00:00
2d26e91522
fpspreadsheet: Reading of biff5 and biff8 shared formulas (biff2 does not have them).
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3524 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-04 13:18:28 +00:00
e2bb18e694
fpspreadsheet: Reading and writing of shared formulas working for OOXML.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3523 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-04 09:19:45 +00:00
ef0a0319db
fpspreadsheet: Writing of shared formulas for ods and biff2 (shared formulas are not yet working in the other formats).
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3522 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-03 21:12:20 +00:00
3d4c5282fd
fpspreadsheet: Allow localized decimal and list separators in formula editor of the spready demo
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3514 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-02 14:04:38 +00:00
5d496d9cf4
fpspreadsheet: Fix formula issues with ods (written error values still different between fps and ods).
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3512 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-02 09:25:54 +00:00
c3becffe34
fpspreadsheet: Modify expression parser to accept decimal and list separators different from the default point and comma.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3509 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-01 08:17:35 +00:00
e387d98b6d
fpspreadsheet: Move code for calculation of standard built-in formulas from fpsexprparser to separate unit (fpsfunc)
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3507 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-08-31 16:02:50 +00:00
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
3fa5fd28ca
fpspreadsheet: Complete calculation of shared rpn formulas.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3497 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-08-19 11:46:32 +00:00
f6845282d9
fpspreadsheet: Prevent biff2 writing formulas containing fekCellOffset tokens (needed for shared formulas which are not supported by biff2 internally).
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3495 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-08-19 08:27:46 +00:00
4bafc57020
fpspreadsheet: Add writing of shared formulas for OOXML.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3493 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-08-18 13:48:46 +00:00
87283fda5d
fpspreadsheet: Initial implementation of writing shared formulas to BIFF files. BIFF2 working (using copies of master formula), BIFF8 faulty file.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3491 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-08-17 22:25:46 +00:00
72ee090ef3
fpspreadsheet: Fix absolute/relative cell reference issues when reading shared formulas. Update BIFFExplorer for shared formulas. Implement reading of shared formulas for biff5 (nothing to be done for biff2 which does not support shared formulas).
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3490 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-08-16 23:01:32 +00:00
f430301fd8
fpspreadsheet: Add cell inspector to spready demo (shows properties of selected cell).
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3489 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-08-16 17:37:16 +00:00
62ff8bc2d0
fpspreadsheet: Initial version of reading BIFF8 shared rpn formulas. Reconstruction of string formula from shared rpn formula ok.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3488 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-08-15 19:29:58 +00:00
39b88796ee
fpspreadsheet: cosmetic
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3479 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-08-13 19:26:21 +00:00
67186349be
fpspreadsheet: make sure that formulas are only recalculated when needed (in particalar only once after loading a file). Rename worksheet option soCalcAfterSaving to boCalcAfterSaving and assign it to the Workbook. (Add section "Incompatible changes" to wiki).
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3478 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-08-13 19:23:59 +00:00
2dd6598e20
fpspreadsheet: Reorganize formula recalculation code to achieve more stability against infinite loops.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3477 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-08-13 18:44:38 +00:00
03913876d3
fpspreadsheet: Implement automatic calculation of existing rpn formulas whenever a cell changes.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3476 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-08-13 14:05:29 +00:00
5bc25c482e
fpspreadsheet: Clean up. Silence some hints.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3473 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-08-12 14:52:57 +00:00
f35eae9379
fpspreadsheet: Fix OOXML writer using incorrect color if palette index is >63. Activate color count error test for ooxml and ods.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3472 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-08-12 09:05:19 +00:00
495499a9e2
fpspreadsheet: Make sure that Excel's system colors are kept when colors are added to a palette. Fix BIFF 2 font color mismatch in unit test. All green again.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3471 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-08-11 22:39:47 +00:00
eaabdf67c1
fpspreadsheet: Make sure that biff writers do not write colors exceeding the maximum palette count. Add casse to error tests (passed, but the biff2 font color test fails now...)
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3470 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-08-11 15:53:06 +00:00
ad1ae69544
fpspreadsheet: Log warning if BIFF writer tries to write more than 64 colors. More clean-up.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3468 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-08-11 11:16:43 +00:00
c75695c301
fpspreadsheet: Convert forgotten WriteXXXX(Row,Col...) procedures to functions returning the cell used.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3463 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-08-10 09:22:42 +00:00
ced21b2d9c
fpspreadsheet: Fix memory leak in cell memory allocation (visibile in OOXML and ODS).
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3462 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-08-09 14:17:49 +00:00
83db4e3fc4
fpspreadsheet: Add proper ifdefs around "uses clocale" in fpspreadsheet.pas
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3458 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-08-08 21:18:16 +00:00
a0a19eb380
fpspreadsheet: Write OOXML string formulas. Write biff2 dimension record.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3456 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-08-08 19:00:27 +00:00