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
e59ea19149
fpspreadsheet: Remove some duplicate code related to merged cells
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3953 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-20 18:55:38 +00:00
d005a0c3c9
fpspreadsheet: Fix location of cell comments after insert/delete of rows/cols
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3952 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-19 18:09:47 +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
f34b79c6fd
fpspreadsheet: Add TCell record helper to access cell comments from the cell
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3946 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-15 22:18:38 +00:00
54c2af0154
fpspreadsheet: reformatting, cosmetic changes
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3945 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-15 22:05:20 +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
8e7a3b741a
fpspreadsheet: Add unit xlsEscher for writing Microsoft Office shapes needed for cell comments in BIFF8. Writing of comments not yet working. Lots of additions to BIFFExplorer.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3942 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-14 22:27:49 +00:00
d8a3204045
fpspreadsheet: Clean up
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3933 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-07 22:24:08 +00:00
629ac7dd00
fpspreadsheet: Remove workbook parameter from the reader's ReadFromXXXX methods to avoid with conflict by workbook passed at construction.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3925 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-04 19:50:50 +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
71c6eea0fa
fpspreadsheet: Implement cell comments for biff2 and biff5 (reading and writing). Complete cell comments for ods.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3915 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-30 22:47:13 +00:00
cca611b21b
fpspreadsheet: Basic support for cell comments in fpspreadsheet.pas, fpspreadsheetgrid.pas and fpsactions.pas. Update chm help file.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3912 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-30 14:48:51 +00:00
f4bf29da87
fpspreadsheet: Further improvement of file format detection. Use it in BIFFExplorer as well.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3907 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-29 11:39:01 +00:00
b765956574
fpspreadsheet: Fix comments in TCell declaration
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3906 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-29 11:18:49 +00:00
9ff9bc15b5
fpspreadsheet: Improved file format detection
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3905 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-29 11:01:49 +00:00
8f3d5d471f
fpspreadsheet: Fix buffered stream reading speed issues.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3904 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-27 19:31:57 +00:00
e3a0d4a858
fpspreadsheet: Add missing cell record helper for "BorderStyles"
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3902 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-25 23:30:15 +00:00
22a7e50170
fpspreadsheet: Put numerical data of the TCell record into a variant record --> further reduction of memory consumption per cell (now by 70% of original TCell).
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3898 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-24 22:52:22 +00:00
3113794fab
fpspreadsheet: Fix crash when reading a BIFF5 file written by Excel97 (it has data (the directory) beyound the workbook stream which is not expected by the BIFF5/8 readers).
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3897 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-24 22:19:55 +00:00
9d89f1dcf3
fpspreadsheet: Fix missing error to be shown when a sheet containing a formula with circular reference is calculated.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3896 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-24 15:44:54 +00:00
d9343190a4
fpspreadsheet: Add mission routines of the cell record helper. Some cosmetics. Clean up commented lines from previous commit.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3895 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-24 00:36:10 +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
fd627c1fa1
fpspreadsheet: Introduce an include file (fps.inc) with all conditional defines. They are needed to compile the packages with older LCL/FPC versions (tested back to Laz1.0 / FPC2.4). All patched procedures are in fpspatches.pas and turned on/off by these defines.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3884 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-13 19:02:57 +00:00
988c2a3d7a
fpspreadsheet: Less warnings. Prepare TsWorksheetGrid to avoid storing of colwidths and rowheights (requires Mantis #0027279 in Lazarus)
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3879 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-09 22:25:20 +00:00
f1bdde968a
fpspreadsheet: Add some forgotten comments on xls format detection
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3878 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-08 17:49:00 +00:00
f1d5a14660
fpspreadsheet: Add demo "workbookchartsource" to "fpschart" folder. Move previous content of fpschart to subfolder "worksheetchartsource". Fix old fpschart demo to show a reasonable chart.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3877 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-08 17:36:41 +00:00
2c81897ffc
fpspreadsheet: Avoid duplicate code in TsWorkbookChartSource. Fix crashes of the chartsource when used worksheets are renamed or deleted. More refined notification of visual controls.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3867 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-05 23:32:49 +00:00
98b35354b6
fpspreadsheet: Initial version of TsWorkbookChartSource (will replace TsWorksheetChartSource)
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3865 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-03 20:03:55 +00:00
e4762b4fb7
fpspreadsheet: Prepare for next stable release 1.4
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3856 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-12-31 16:50:31 +00:00
98e1c88c1e
fpspreadsheet: Initial implementation of a simple clipboard (within appliation only) for TsWorksheetGrid. Not yet fully working.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3843 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-12-17 23:28:41 +00:00
fdd9b88f43
fpspreadsheet: Set package versions 1.3 in order to follow the convention of giving the trunk version an odd number. Silence some compiler hints.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3826 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-12-06 18:09:15 +00:00
794f556efe
fpspreadsheet: Add test case for copy format. Fix default vertical text alignment issue of biff5 and biff8.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3817 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-12-01 16:50:00 +00:00
6194b41ef0
fpspreadsheet: Add support for copying cell values and formulas. First unit test of copying values.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3814 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-30 23:45:08 +00:00
2df085549c
fpspreadsheet: Add change palette notification to visual control system.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3804 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-28 10:41:54 +00:00
1b7d496a56
fpspreadsheet: TsCellCombobox finished.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3799 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-27 20:59:14 +00:00
ae6efc0f98
fpspreadsheet: Extend TsCellCombobox to handle several formatting items - will replace Fontname and FontSize combox. Not working correctly, yet. Update fpsctrls demos.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3790 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-26 23:45:09 +00:00
a08450cace
fpspreadsheet: Add worksheet method ReadCellFont
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3784 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-26 16:19:42 +00:00
8ae43388f0
fpspreadsheet: Less compiler hints and warnings. Some clean-up.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3760 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-21 15:47:54 +00:00
faea171374
fpspreadsheet: Avoid flicker of TsTabControl when new workbook is opened or worksheets are added manually. Fix some bugs in the notification system.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3758 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-21 13:08:46 +00:00
824d6adb92
fpspreadsheet: Reduce flicker of TsTabControl; still not perfect.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3754 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-20 16:48:31 +00:00
0f3a6dcbfb
fpspreadsheet: Use file header to distinguish between Excel2, Excel5 and Excel8 file formats, avoids the exception when trying an incorrect file format.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3744 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-18 13:53:27 +00:00
0a34c6314a
fpspreadsheet: Improved increasing/decreasing of decimal count by means of action control.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3726 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-14 21:18:16 +00:00
cfe9cf68ee
fpspreadsheet: Update chm help file (include fpspreadsheetctrls)
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3709 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-08 23:41:35 +00:00
ad1bdb294a
fpspreadsheet: Remove ComboboxEx left-over in spready ( http://forum.lazarus.freepascal.org/index.php/topic,26299.msg161924.html#msg161924 ).
...
Add a note to fpopendocument on difficulties when reading empty formatted cells.
Add function "CopyCell" to TsWorksheet.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3705 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-06 15:19:20 +00:00
1b86c7e3dd
fpspreadsheet: Prepare TsWorksheetGrid for multiselection of ranges (not activated by default, requires the patch of issue #0027000 ). Add information on selected cell and selected ranges to TsWorksheet (stored/restored on changes of active sheet). Some more information in TsSpreadsheetInspector.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3704 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-05 23:45:48 +00:00
2b4925f0a8
fpspreadsheet: Rename the new properties SelectedCellCol/Row of TsWorksheet to ActiveCellCol/Row - the "selected" will become a more general meaning soon. Rename the "SelectedWorksheet" of TsWorkbookSource to "Worksheet" (less typing). Sorry for the inconvenience...
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3703 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-04 21:56:24 +00:00
791032b964
fpspreadsheet: Initial version of fpspreadsheet controls, a set of visual controls to facilitate creation of a spreadsheet application.
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3701 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-03 15:34:57 +00:00
a1fe949908
fpspreadsheet: Fix unit test for currencies, pass now for all file format (some kind of tweaking for Excel2 and fpc formatting inconsistencies though).
...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3699 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-29 22:36:03 +00:00