Commit Graph

96 Commits

Author SHA1 Message Date
d1a80fc98f fpspreadsheet: Fix severe speed issue in WorksheetGrid (unnecessarily seeking last sheet column in DrawRow, needed for cell text overflow).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4039 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-16 17:40:16 +00:00
95edadbd29 fpspreadsheet: Fix cell row and column enumerator sometimes failing
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4036 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-16 00:05:56 +00:00
24b49277c1 fpspreadsheet: Fix incorrect assignment of cell format to hyperlinks when reading ods files (and some more bugs). Extend TsSpreadsheetInspector to display font and cell format lists of the workbook.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4014 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-10 23:48:30 +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
135ceb1eef fpspreadsheet: Fix WorksheetGrid to show selection of merged cell range correctly. Fix cell content of blank cells after adding a hyperlink.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3980 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-02 21:20:00 +00:00
a10546d99b fpspreadsheet: Migrate MergeCells tree to fpsClasses
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3979 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-03-02 16:50:14 +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
1b35aa8bb2 fpspreadsheet: Fix compilation of visual package
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3962 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-02-24 23:23:15 +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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
f1ab7d75eb fpspreadsheet: Fix copy and paste error in chm help file.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3773 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-24 21:23:53 +00:00
b923de512a fpspreadsheet: Add palette icons for visual controls. Update chm help.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3761 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-21 23:50:35 +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
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
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
ffb78b505e fpspreadsheet: Fix ooxml writer crashing when writing floating point numbers to various xml nodes using a decimal comma instead of a point (in non-English FormatSettings).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3740 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-17 23:44:13 +00:00
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
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
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
51972779d5 fpspreadsheet: Add actions for visual modification of font style, horizontal and vertical alignment of selected cells.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3721 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-12 22:55:22 +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
26ef279b23 fpspreadsheet: Check lcl version to activate worksheetgrid multi-selection (Laz r46767) for Laz trunk only
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3706 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-11-07 14:42:09 +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