Commit Graph

373 Commits

Author SHA1 Message Date
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
0bfcd5c4f8 fpspreadsheet: Introduce "settings" records for each file format to define parameters needed for reading/writing. This fixes two unit test fails in Ubuntu (only 1 fail left).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3964 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-25 10:55:46 +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
e0ba07f38b fpspreadsheet: Fix compilation errors
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3958 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-24 00:30:26 +00:00
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
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
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
wp_xxyyzz
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
wp_xxyyzz
5d1c4ec7c7 fpspreadsheet: Read cell comments from xlsx files.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3918 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-31 18:42:22 +00:00
wp_xxyyzz
b267fd7694 fpspreadsheet: Implement reading of cell comments from opendocument files. Fix cell text with manual line break in opendocument files.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3913 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-30 16:50:23 +00:00
wp_xxyyzz
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
wp_xxyyzz
0ecf404c0a fpspreadsheet: Fix TsWorksheetGrid showing frozen cells with black border if TitleStyle is not tsNative. Fix TsSpreadsheetInspector and spready demo crashing due to ignoring the cell content type.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3908 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-29 12:39:52 +00:00
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
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
80c2ec255c fpspreadsheet: Some improvements in Laz 1.0 compatibility, still issues. Fix style error in wikitable writer.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3885 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-14 15:34:20 +00:00
wp_xxyyzz
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
wp_xxyyzz
2ef2765646 fpspreadsheet: Better way to avoid storing of TsWorksheetgrid's ColWidths/RowHeights in lfm, thanks to Engkin. Fix compilation error in fpsvisualutils.pas
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3883 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-12 11:42:23 +00:00
wp_xxyyzz
c65e2b60d5 fpspreadsheet: Working solution for avoiding storing TsWorksheetGrid's colwidths and rowheights in lfm file, requires Laz trunk.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3880 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-11 15:52:30 +00:00
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
157a1133fb fpspreadsheet: Use interfaces in the notification mechanism of the visual controls - this avoids requiring the TAChart package even in case of non-chart-aware spreadsheet programs.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3872 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-01-06 17:42:54 +00:00
wp_xxyyzz
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
wp_xxyyzz
098b7daf32 fpspreadsheet: FPSExport tries to determine cell format from the exported database field types.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3845 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-12-19 21:45:44 +00:00
wp_xxyyzz
aabdaed83f fpspreadsheet: Extend fpsExport to allow export of several dataset to multiple worksheets. Update db_import_export demo.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3844 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-12-19 14:47:59 +00:00
wp_xxyyzz
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
wp_xxyyzz
42b8235d52 fpspreadsheet: Modify TsCellInspector to show size of last selected block. Restructure menu of fpsctrls demo.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3841 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-12-16 18:28:41 +00:00
wp_xxyyzz
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
wp_xxyyzz
8080fd856f fpspreadsheet: Remove TsFontNameCombobox and TsFontSizeCombobox, use TsCellCombobox instead.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3805 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-28 10:51:07 +00:00
wp_xxyyzz
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
wp_xxyyzz
c75c611846 fpspreadsheet: Some improvements of TsCellCombobox.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3798 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-27 15:20:29 +00:00
wp_xxyyzz
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
wp_xxyyzz
f4f6085351 fpspreadsheet: Correctly identify line endings in CSVParams form of spready demo.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3781 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-25 23:26:27 +00:00
wp_xxyyzz
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
wp_xxyyzz
f72590c226 fpspreadsheet: FPSpreadsheetGrid enters "enhanced edit mode" (remove formatting, show formulas) also by mouse click into cell (in addition to F2). Editing of cell content now seems to be consistent with Excel.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3750 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-19 08:48:07 +00:00
wp_xxyyzz
30fa3200d0 fpspreadsheet: Add functionality for adding/deleting columns/rows to fpsctrl demo
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3745 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-19 00:04:53 +00:00
wp_xxyyzz
3bd94275ba fpspreadsheet: Fix CopyFormat action. Complete menu of fpsctrls demo. Fix caption and hint assignment in fpspreadsheet standard actions.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3739 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-17 22:18:40 +00:00
wp_xxyyzz
6721996b7a fpspreadsheet: Add loading and saving by actions to fpsctrls demo. Add action to copy format (not working yet).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3737 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-17 16:59:22 +00:00
wp_xxyyzz
32aa7437f9 fpspreadsheet: Add action for merging cells. Add combobox for font name and font size.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3733 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-16 21:59:52 +00:00
wp_xxyyzz
bd2ef6579f fpspreadsheet: Add standard actions for predefined cell border combinations
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3731 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-15 22:32:51 +00:00
wp_xxyyzz
8c38687a90 fpspreadsheet: Add actions for font and background color selection.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3727 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-14 23:27:49 +00:00
wp_xxyyzz
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
wp_xxyyzz
235340289a fpspreadsheet: Add action to increment/decrement decimal places
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3725 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-14 15:09:16 +00:00