Commit Graph

442 Commits

Author SHA1 Message Date
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
0396e0805d fpspreadsheet: Registration of currency symbols. Add currency dialog to spready. Automatic detection of currencies in in worksheet.WriteCellAsNumber. Avoid redundant code in csv reader's currency detection.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3698 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-29 16:39:49 +00:00
ba40d180c4 fpspreadsheet: Fix some UTF8-related bugs in connection with currency formats
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3696 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-25 23:05:26 +00:00
c4d1e08656 fpspreadsheet: Introduce string encoding when reading/writing csv files. Automatic detection of currency working now (€ symbol is detected correctly now). Use UTF8 encoded format settings.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3687 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-24 20:44:37 +00:00
c1102886cc * fpspreadsheet: cosmetic: comments; harmonize code layout with existing code
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3685 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-24 10:46:04 +00:00
32fbca7594 fpspreadsheet: Override TsWorksheetGrid's Sort method to the Sort method of the Worksheet. Hide OnCompareCells event.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3681 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-23 14:31:29 +00:00
f9dc0c3370 fpspreadsheet: More sorting criteria: case-senstivity, numbers first or text first in case of mixed ranges. Update spready.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3680 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-23 13:38:41 +00:00
fb8faab20b fpspreadsheet: Fix compilation error introduced yesterday. Fix multi-key sorting which now passes all tests.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3679 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-23 09:07:20 +00:00
4a1a99044b fpspreadsheet: Fix circular unit reference bug (thanks, Michael). Add demo_sorting.pas unit missing from last commit. Some improvements with multi-key sorting, but still in error sometimes (--> sorting code is still experimental).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3678 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-22 23:25:26 +00:00
2f6bc3c183 fpspreadsheet: Mode test cases on sorting (two-column sort test not yet working correctly)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3677 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-22 15:57:07 +00:00
233c735db6 fpspreadsheet: Improved sorting parameters (individual sort direction for sort keys). Fix some bugs. Begin to write a sorting test case. Add a demo on sorting.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3676 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-21 22:57:02 +00:00
68649b7275 fpspreadsheet: Initial version of worksheet sorting. Add sorting parameters dialog to spready. Basic demonstration of sorting in spready.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3675 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-21 15:12:51 +00:00
8891b0a90b fpspreadsheet: Add test case for switched decimal and thousand separators in csv file. Fix bugs related to that.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3674 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-20 23:17:07 +00:00
7b3795dc03 fpspreadsheet: Less hints. Adapt spready code to differences between trunk and Laz 1.2.6, remove duplicate colorbox unit in spready.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3667 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-20 09:22:06 +00:00
9f014b6875 fpspreadsheet: Add reading/writing of boolean cell values for BIFF formats.
Add test case for boolean cell values for all formats (incl. CSV). 
Extend spready demo to be able to write sfExcel2 and sfExcel5 formats.

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3656 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-14 21:44:00 +00:00
a4c5667dc9 fpspreadsheet: Reading/writing of boolean cell values for all file formats (BIFF not complete, yet).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3655 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-14 15:56:08 +00:00
390b0539f1 fpspreadsheet: Move some more translatable strings to fpsStrings unit. Some clean-up & cosmetics.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3640 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-08 09:23:34 +00:00
46a94e0abf fpspreadsheet: Fix xlsx reader truncating strings after 255 characters due to missing $H+ directive. Check that all units use the $H+.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3637 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-07 22:53:52 +00:00
c3f65eac18 fpspreadsheet: Use fmShareDenyNone when opening files for reading (see Mantis 0026826).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3636 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-07 14:02:11 +00:00
4dfa60673d fpspreadsheet: Remove some unnecessary calls to lo() (no idea why I introduced them...). Fix range check errors in the test suite.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3633 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-06 12:55:28 +00:00
af452001d4 fpspreadsheet: Greatly reduce hints and warnings.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3632 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-06 10:43:10 +00:00
93da62030e fpspreadsheet: Less hints & warnings
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3630 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-03 22:02:09 +00:00
6f14b93502 fpspreadsheet: Autoadjust column width and row height in TsWorksheetGrid by double-clicking at border between header cells; update demos.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3626 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-10-03 16:09:54 +00:00
2f8c9089ad fpspreadsheet: Fix speed issues in saving large files due to unnecessary calculation of col/row limits.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3615 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-30 22:18:46 +00:00
04907b25bb * fpspreadsheet: typo
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3613 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-30 11:59:47 +00:00
055dc7e089 fpspreadsheet: Entering an empty string in an unformatted cell of the WorksheetGrid removes the cell from the worksheet. wiki writer takes stores font name.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3608 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-27 22:46:21 +00:00
e9ae26952f fpspreadsheet: Complete writing of all cell styles to wikitables (except for text rotation). Some cleanup of compiler warnings.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3606 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-26 13:47:47 +00:00
5e4d7d4825 fpspreadsheet: Extend wikitables writer to write cell alignment, text color, borders and merged cells.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3605 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-25 15:48:44 +00:00
cb05f8873a fpspreadsheet: Fix speed loss introduced by merging of cells (-> speed-up of some unit tests)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3600 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-23 22:24:35 +00:00
1ed35f0eb1 fpspreadsheet: Raise an exception if virtual mode is used without an event handler to provide data. Some cosmetics.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3599 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-23 21:51:26 +00:00
5fd5231014 fpspreadsheet: Fix insert/delete column/row issues for shared formulas. Complete shared formula test cases on insert/delete columns and rows. Duplicate these test cases for OOXML. All passed.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3595 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-23 14:15:28 +00:00
0e97c6bec0 fpspreadsheet: Fix biff8 incorrectly reading non-contiguous shared formulas. Fix biff8 writing only contiguous shared formulas.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3594 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-22 13:35:19 +00:00
094bb314fc fpspreadsheet: Read non-contiguous shared formulas correctly from OOXLM (BIFF8 still faulty)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3588 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-22 10:51:33 +00:00
d5a1be557d fpspreadsheet: Trying to solve the "insert column / shared formula issue" - not fixed yet.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3586 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-09-21 21:47:08 +00:00