Commit Graph

62 Commits

Author SHA1 Message Date
25da629e34 fpspreadsheet: Allow writing duplicate filler palette entries like in the built-in Excel colors
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5867 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-05-18 15:03:20 +00:00
078274920d fpspreadsheet: Fill unused BIFF5 and BIFF8 palette entries by default colors to avoid Excel XP show an incomplete color dialog.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5863 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-05-18 10:50:22 +00:00
96e463a810 fpspreadsheet: fix typo that prevent Excel from reading xlsx files with comments
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5861 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-05-17 23:43:43 +00:00
5c409068c2 fpspreadsheet: Fix conversion of biff palette colors for fonts in reader.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5860 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-05-17 21:43:30 +00:00
e1f03daa5c fpspreadsheet: Fix biff format writing non-editable palette indexes to file (Excel cannot edit the cells any more - see http://forum.lazarus.freepascal.org/index.php/topic,36903.0.html)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5859 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-05-17 17:26:48 +00:00
59f0da6d91 fpspreadsheet: Fix Excel readers updating the workbook's default font.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5838 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-04-21 10:38:54 +00:00
e9ca7a1e2d fpspreadsheet: Fix writing vertically distorted images due to incorrect row height calculation (see http://forum.lazarus.freepascal.org/index.php/topic,31740.msg243224.html#msg243224)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5832 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-04-11 19:59:54 +00:00
1a51875560 fpspreadsheet: Replace usage of AVL_Tree by avglvltree to avoid conflicts of fpc and laz AVL_Tree versions in Laz trunk after r54524
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5831 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-04-06 10:35:13 +00:00
b736103903 fpspreadsheet: Make WorksheetGrid respect the spSelectLockedCells and spSelectUnlockedCells flags in the worksheet's Protection set. Like in Excel, TsCellEdit displays an error message box if the user tries to focus it in case of a locked cell.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5815 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-20 11:10:02 +00:00
18965c7740 fpspreadsheet: Further integration of cell and worksheet protection in visual controls.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5813 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-19 23:09:01 +00:00
d25851c07f fpspreadsheet: Initial commit of experimental xlsx decryption support (xlsx decryptor written by forum user shobits1).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5806 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-14 21:48:29 +00:00
29f8b2a131 fpspreadsheet: Fix range check error in ods writer (see http://forum.lazarus.freepascal.org/index.php/topic,36059.msg240963.html#msg240963)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5805 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-14 16:55:00 +00:00
b8da454852 fpspreadsheet: Add utility to crack an Excel password
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5803 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-08 22:44:09 +00:00
ea421f483d fpspreadsheet: Fix mis-positioning of images read from ods files in WorksheetGrid
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5801 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-08 15:24:00 +00:00
a5d8446783 fpspreadsheet: Initial version to display embedded images in the WorksheetGrid
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5800 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-08 11:50:58 +00:00
a4457a850e fpspreadsheet: Add writing support for xls password hashes. Add test case for it.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5799 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-07 22:02:09 +00:00
87ecb8241c fpspreadsheet: Add uffProtection to UsedFormattingFields to simplify reading cell protection.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5798 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-07 10:47:28 +00:00
d81738d19c fpspreadsheet: Complete ods writer for cell/sheet/document protection -- but ods has a so-far unsupported option to hide cell content, not just formulas ("hidden-and-protected")...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5797 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-07 10:13:18 +00:00
4505fb76cd fpspreadsheet: Add writing support for cell, sheet and workbook protection in xls files (biff2, biff5, biff8), opendocument and Excel XML files. Not complete, yet.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5795 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-06 23:30:59 +00:00
06688f42e1 fpspreadsheet: Fix Excel password hash calculation (patch by shobits1).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5792 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-05 23:16:43 +00:00
16118290c5 fpspreadsheet: Add ods reader for cell, sheet and workbook protection. Simplification in xlsx reader for sheet protection. Remove field HashValue from TsCryptoInfo (it is PasswordHash now)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5791 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-05 23:05:03 +00:00
b04fd3f0b5 fpspreadsheet: Add reading of cell, sheet and workbook protection to biff2 and biff5.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5790 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-05 17:29:20 +00:00
2f54a9bfca fpspreadsheet: Add reading of cell/sheet/workbook protection for xls biff8.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5789 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-05 16:52:17 +00:00
6126788bec fpspreadsheet: Refactor TsCryptoInfo record.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5788 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-05 12:25:29 +00:00
ffceb1932b fpspreadsheet: Add new unit fpscrypto.pas.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5787 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-05 11:44:32 +00:00
3d454bf83b fpspreadsheet: Rename TsWorksheet.ReadProtection to TsWorksheet.ReadCellProtection
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5785 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-05 10:52:50 +00:00
b3110a90cc fpspreadsheet: Add support of workbook, worksheet, and cell protection for xlsx (modified patch by shobits1, see http://forum.lazarus.freepascal.org/index.php/topic,36075.0.html). Add protection unit tests.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5783 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-04 21:29:12 +00:00
b9cbc1b174 fpspreadsheet: Fix csv unit test fails of some date/time values.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5778 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-02 11:18:27 +00:00
4ce25109a8 fpspreadsheet: Read/write worksheet hidden state for biff8 and biff5.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5775 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-01 20:01:14 +00:00
59c6c664f9 fpspreadsheet: Read/write hidden state of worksheets for ods
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5774 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-01 18:21:21 +00:00
3750e3717d fpspreadsheet: Read/write hidden state of worksheets for xlsx files.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5773 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-01 17:58:02 +00:00
47c857aa6b fpspreadsheet: Add worksheet option soHidden to mark a worksheet as hidden.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5771 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-03-01 17:29:24 +00:00
4191575bd1 fpspreadsheet: Implement reading of shared formulas with cell block arguments (see http://forum.lazarus.freepascal.org/index.php/topic,35903.msg238701.html#msg238701)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5767 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-02-20 22:57:23 +00:00
f85d2543ba fpspreadsheet: Make sure that all demos are compiled with -Xg
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5764 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-02-20 17:21:56 +00:00
a306981b46 fpspreadsheet: Fix xlsx reader incorrectly detecting word wrap.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5756 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-02-18 20:23:25 +00:00
b00e9fa332 fpspreadsheet: Suppress filler columns in xlsx files by reading the dimensions attribute.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5755 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-02-18 19:01:22 +00:00
7e91f6373f fpspreadsheet: Fix different listseparator used in formulas of ods files written by Excel.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5754 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-02-18 18:19:53 +00:00
280dc39ddc fpspreadsheet: Fix formulas from prev sheet overrunning other formulas in sheet, xlsx issue (SharedFormulaBase list must be reset for each sheet) - see http://forum.lazarus.freepascal.org/index.php/topic,35903.0.html)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5753 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-02-18 17:31:05 +00:00
ef4c18081d fpspreadsheet: Replace prev commit by better fix for formulas with return a blank cell being lost.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5752 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-02-18 16:54:50 +00:00
cf167af00d fpspreadsheet: Fix TsWorksheet.WriteBlank erasing formula (see: http://forum.lazarus.freepascal.org/index.php/topic,35906.msg238389/topicseen.html)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5751 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-02-17 23:38:47 +00:00
694b61fac2 fpspreadsheet: Experimental implementation of moving of columns (see http://forum.lazarus.freepascal.org/index.php/topic,35733.0.html)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5750 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-02-15 21:56:11 +00:00
4938bf8ec4 fpspreadsheet: Overload also worksheet *function* WriteCellValueAsString.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5729 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-01-29 16:09:52 +00:00
fee22c947f fpspreadsheet: Simplify csv reader interpreting text (calls worksheet's WriteCellValueAsString now).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5728 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-01-29 14:48:27 +00:00
27b17a3585 fpspreadsheet: Overload Worksheet.WriteCellValueAsString with version having its own FormatSettings as a parameter.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5727 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-01-29 14:04:52 +00:00
8c56dd2d66 fpspreadsheet: Fix loading error messages not being shown by TsWorkbookSource.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5606 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-01-08 10:53:23 +00:00
212a9470c7 fpspreadsheet: Relax reading of unknown fill patterns from xlsx (avoids crash of xlsx files written by Gnumeric).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5595 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-01-05 16:18:37 +00:00
400d64a17d fpspreadsheet: Fix incorrect copying of row/col records from an external worksheet.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5589 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-01-03 00:12:46 +00:00
935c054138 fpspreadsheet: Add TsWorksheet.IsEmpty and TsWorkbook.RemoveAllEmptyWorksheets.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5582 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-01-02 09:35:10 +00:00
587ea10dc8 fpspreadsheet: Include copying of row and column records in CopyWorksheetFrom.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5580 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-01-02 09:10:20 +00:00
e22ceab9c9 fpspreadsheet: Fix grid's Col/RowCount not being reduced if a sheet with less cols/rows than the current sheet is selected (http://forum.lazarus.freepascal.org/index.php/topic,35182.msg232477.html#msg232477). Introduce top/left cell indexes in worksheet to make sure that active cell remains at the row/col stored in the worksheet when changing worksheets.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5560 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-12-23 17:05:14 +00:00