Commit Graph

231 Commits

Author SHA1 Message Date
wp_xxyyzz
394c8032df fpspreadsheet: Fix 3d formulas not changing when rows/cols are inserted/deleted in referenced sheets.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6454 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-06-04 09:47:08 +00:00
wp_xxyyzz
6c19ca21cb fpspreadsheet: Fix crash when referenced worksheet does not exist.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6453 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-06-03 11:07:42 +00:00
wp_xxyyzz
115a423be5 fpspreadsheet: Fix crash when a row is deleted with a formula and referenced cells of another formula (see discussion in https://forum.lazarus.freepascal.org/index.php/topic,41161.msg287707.html#msg287707).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6452 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-06-02 16:35:14 +00:00
wp_xxyyzz
c7f9a9e7cb fpspreadsheet: Some clean-up.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6450 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-06-02 16:15:44 +00:00
wp_xxyyzz
f68c5da31c fpspreadsheet: Fix iterative 3d formula correction terminating prematurely.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6449 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-06-02 11:46:57 +00:00
wp_xxyyzz
79f14f6143 fpspreadsheet: Fix 3d formulas when worksheets are renamed or deleted. Add corresponding test cases.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6448 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-06-01 17:58:14 +00:00
wp_xxyyzz
a6900014cf fpspreadsheet: Use a StringHashTable for the SST needed when writing BIFF8 (significant speed-up of files with many strings, but still considerably slower than BIFF5 and BIFF2).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6447 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-31 16:22:41 +00:00
wp_xxyyzz
40fabfc201 fpspreadsheet: Redo storage of formulas: formulas now are stored in a separate tree independent of the cells tree. The field FormulaValue of TCell record was removed. All unit tests passed. Demos updated (issues of speedtest due to SST in BIFF8 found - not related).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6446 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-30 22:15:07 +00:00
wp_xxyyzz
d5e5df7485 fpspreadsheet: Rearrange units to better avoid circular unit references. General idea: no unit of the package must "use" fpspreadsheet.pas in the interface section.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6444 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-22 22:21:15 +00:00
wp_xxyyzz
b9ac1ebf02 fpspreadsheet: Introduce infrastructure to fix formulas when sheets are added, renamed etc. Not functional at the moment.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6442 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-21 08:28:51 +00:00
wp_xxyyzz
fd2a79771a fpspreadsheet: Update cell flag cf3dFormula after parsing of a formula.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6424 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-16 22:31:30 +00:00
wp_xxyyzz
79d7b2dc54 fpspreadsheet: Fix formula cell with 3d reference not updating when referenced cell is deleted.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6423 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-16 20:41:03 +00:00
wp_xxyyzz
b94ba1fac6 fpspreadsheet: Simplify handling of 3d references. Fix bug related to 3d reference type 'Sheet1:Sheet2!A1'.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6422 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-16 17:44:02 +00:00
wp_xxyyzz
613c96821c fpspreadsheet: Ignore the order of indexes in cell ranges when parsing formulas. Add corresponding unit tests.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6420 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-16 08:45:28 +00:00
wp_xxyyzz
8adcbb27cd fpspreadsheet: Fix creation of erratic sheets by XLSX reader if not-yet-existing sheets are referenced in formulas during reading.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6415 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-15 12:05:18 +00:00
wp_xxyyzz
4ab667eb30 fpspreadsheet: Fix PageLayout. Separate BIFF5 and BIFF8 handling of 3d references.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6412 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-15 07:37:50 +00:00
wp_xxyyzz
28d6da64fc fpspreadsheet: Fix cell ranges in ods formula parser. --> 3d single-sheet references (Sheet1!A1;B4) working for all ODS now for both reading and writing. PageLayout broken for BIFF5 at the moment.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6409 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-13 23:09:18 +00:00
wp_xxyyzz
d2351b5559 fpspreadsheet: Fix 3d cell references with a single other sheet (Sheet1!A1:C3), except for ODS. 3d references with several sheets prepared (not tested yet). Some more unit tests.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6408 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-13 10:15:13 +00:00
wp_xxyyzz
bc685aaeb8 fpspreadsheet: Write single-sheet 3d references (e.g., 'Sheet1!A1:B6') to BIFF8 (xls). Issues with reading.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6405 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-11 23:18:10 +00:00
wp_xxyyzz
4f4c913ac0 fpspreadsheet: Read and write xlsx files with formulas containing internal references to a range of cells within the same sheet (e.g., 'SUM(Sheet2!A1:B5)' ).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6403 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-10 17:58:05 +00:00
wp_xxyyzz
e98bda1717 fpspreadsheet: Add BIFF5 writer for 3d references. Add corresponding unit test. Some related bug fixes. Less hints.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6401 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-10 14:31:37 +00:00
wp_xxyyzz
74c64b7258 fpspreadsheet/formulas with 3d references: Implement BIFF5 reader for 3d references. Some DebugLn insertions for better debugging (triggered by define FPSpreadDebug).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6400 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-09 21:38:24 +00:00
wp_xxyyzz
bfb8cff66e fpspreadsheet/formulas with 3d references: sfExcel8 can read them now. Several bug fixes (e.g. '=Sheet1!A1' was not working). Add testcases.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6399 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-09 17:07:59 +00:00
wp_xxyyzz
e4f6f6e355 fpspreadsheet: Implement simplest 3D cell references (single cells on any sheet within the same workbook). No reading for xls so far, writing is ok. Reading/writing to xlsx and ods ok.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6398 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-08 22:32:09 +00:00
wp_xxyyzz
7416450bf4 fpspreadsheet: Avoid creating a blank cell if the row/col indexes passed to Worksheet.ReadAsText(row, col) are those of a non-existing cell (see https://forum.lazarus.freepascal.org/index.php/topic,41132.msg284876.html).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6377 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-04 07:43:48 +00:00
wp_xxyyzz
499efd7b8c fpspreadsheet: Fix compilation with fpc before 3.0
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6363 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-01 10:23:42 +00:00
wp_xxyyzz
b6e1a4c495 fpspreadsheet: Fix WorksheetGrid not being able to delete a cell block.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6323 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-04-19 20:30:43 +00:00
wp_xxyyzz
0e4645f9bf fpspreadsheet: Check (and fix) compilation of all demo projects (changed handling of include files in fpc 3.0.4)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6317 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-04-18 11:42:22 +00:00
wp_xxyyzz
56f7814556 fpspreadsheet: Fix xls format using incorrect font index in SST (see https://forum.lazarus.freepascal.org/index.php/topic,40784.0.html).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6292 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-04-05 10:42:01 +00:00
wp_xxyyzz
2dfd81b11b fpspreadsheet: Comment an unfinished border drawing routine which made it into the previous commit.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6286 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-04-01 13:43:02 +00:00
wp_xxyyzz
51c6c2940e fpspreadsheet: Avoid selecting a non-base cell of a merged block (patch by wofs, https://forum.lazarus.freepascal.org/index.php/topic,40726.msg281408.html#msg281408).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6285 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-04-01 13:38:57 +00:00
wp_xxyyzz
bcc69621fb fpspreadsheet: Change default csv encoding back to utf8 without bom, because importing csv into Excel and Calc is probably not the most important application of fpspreadsheet, and many other programs will not expect a bom in a text file.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6258 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-03-18 23:03:57 +00:00
wp_xxyyzz
15a617af53 fpspreadsheet: Use UTF8 with BOM as default encoding for CSV reader/writer (better compatibility with Excel/LOCalc, see https://forum.lazarus.freepascal.org/index.php/topic,40527.msg280025.html#msg280025)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6257 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-03-18 22:51:08 +00:00
wp_xxyyzz
a70231ab75 fpspreadsheet: Make sure that the local variable commentcell_rct in TxCustomWorksheetGrid.InternalDrawRow is initialized (issue #33413, patch by Lagunov Aleksey).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6234 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-03-11 21:06:49 +00:00
wp_xxyyzz
24153116a4 fpspreadsheet: Fix reading/writing of milliseconds. Add corresponding test cases. (NOTE: ods cannot display tenths of a second).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6228 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-03-07 22:35:19 +00:00
wp_xxyyzz
72edcdf239 fpspreadsheet: Don't write leading '=' to ods formulas if in ignoreformulas mode.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6220 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-03-04 09:35:40 +00:00
wp_xxyyzz
f78d780b5f fpspreadsheet: Allow number formats with no leading digits. Add corresponding unit test cases.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6218 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-02-28 12:14:19 +00:00
wp_xxyyzz
022b837553 fpspreadsheet: Fix error in Round function. Add a second unit test for Round.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6217 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-02-27 22:21:49 +00:00
wp_xxyyzz
6aedb395f4 fpspreadsheet: Fix xls reader crashing if comment has record sequence OBJ-CONTINUE-TX0-CONTINUE instead of OBJ-TX0-CONTINUE.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6214 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-02-26 22:20:06 +00:00
wp_xxyyzz
659b19e80f fpspreadsheet: Activate boIgnoreFormulas also when reading an ods file.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6213 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-02-25 18:55:47 +00:00
wp_xxyyzz
0282943962 fpspreadsheet: Make ods reader skip the source table of an external reference
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6211 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-02-22 09:27:34 +00:00
wp_xxyyzz
ef46ccd90d fpspreadsheet: Add workbook option boIgnoreFormulas for writing unsupported formulas (See forum https://forum.lazarus.freepascal.org/index.php/topic,40146.0.html).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6209 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-02-20 23:02:45 +00:00
wp_xxyyzz
e47e969aec fpspreadsheet: Add WorkbookOption boAbortReadOnFormulaError. Off by default, i.e. Reader continues after finding an unknown formula.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6207 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-02-20 17:35:23 +00:00
wp_xxyyzz
6edaaa7b11 fpspreadsheet: Fix compilation with Laz 1.0/2.6.0
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6182 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-02-07 00:01:31 +00:00
wp_xxyyzz
1e3da067f2 fpspreadsheet: Less hints and warnings
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6168 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-02-02 14:43:37 +00:00
wp_xxyyzz
b3046a8f88 fpspreadsheet: Avoid confusion of fraction detection by dates
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6085 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-12-03 10:34:31 +00:00
wp_xxyyzz
189ae66d4d fpspreadsheet: Fix workbook.ReadFromStream not updating attached WorksheetGrid.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6076 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-11-24 16:57:26 +00:00
wp_xxyyzz
a8743226b7 fpspreadsheet: Add unit tests for HTML-to-RichText conversion (and vice versa).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6073 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-11-14 22:57:11 +00:00
wp_xxyyzz
f67d13f3b3 fpspreadsheet: Fix html-to-rich-text conversion if text ends with html tag
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6072 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-11-14 15:22:17 +00:00
wp_xxyyzz
bc83057bd8 fpspreadsheet: (Hopefully) fix missing last character of cell text copied to clipboard as CF_TEXT (see http://forum.lazarus.freepascal.org/index.php/topic,38925.0.html)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6069 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-11-13 17:29:24 +00:00
wp_xxyyzz
515e7437e5 fpspreadsheet: Fix number format test case. Now all tests are passed again.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6060 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-11-06 08:35:25 +00:00
wp_xxyyzz
9b8e818c3c fpspreadsheet: Fix max string length test.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6056 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-11-03 21:04:07 +00:00
wp_xxyyzz
f20779983f fpspreadsheet: Fix biff8 writer to use CONTINUE records if text in STRING record is too long.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6055 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-11-03 18:43:37 +00:00
wp_xxyyzz
0310e5587e fpspreadsheet: Write biff8 text cells to shared-string-table to overcome string truncation at 255 characters.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6054 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-11-03 13:39:12 +00:00
wp_xxyyzz
d62cd79a4c fpspreadsheet: Fix Excel8 reader crashing if file does not contain a FONT record (reported by Malcolm Buckingham on mailing list, Oct 30 2017)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6047 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-10-30 13:08:55 +00:00
wp_xxyyzz
b35f362f31 fpspreadsheet: Fix xlsx reader aborting if an error cell does not contain an error code (see http://forum.lazarus.freepascal.org/index.php/topic,38726.0.html).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6046 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-10-28 20:30:33 +00:00
wp_xxyyzz
cc891712d0 fpspreadsheet: Introduce fpspreadsheet exceptions.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6043 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-10-26 08:11:58 +00:00
wp_xxyyzz
7e7044bb6f fpspreadsheet: Fix parameter AOverwriteExisting in TsWorkbook.WriteToFile.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6042 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-10-26 07:54:09 +00:00
wp_xxyyzz
467329f610 fpspreadsheet: Remove debugging leftover code from previous commit
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6035 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-10-05 12:48:57 +00:00
wp_xxyyzz
f8bfbd673f fpspreadsheet: Fix ods writer crashing if number format has more than three sections.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6034 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-10-05 11:41:32 +00:00
wp_xxyyzz
ea26c9887d fpspreadsheet: Improved percent format detection (allow space between number mask and percent character).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6033 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-10-05 05:30:02 +00:00
wp_xxyyzz
ea22d330d4 fpspreadsheet: Fix merged ranges sometimes being read incorrectly from ods files.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6032 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-10-04 17:19:53 +00:00
wp_xxyyzz
709be76b4f fpspreadsheet: Add support for xls one-parameter SUM formulas.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6031 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-10-04 12:36:16 +00:00
wp_xxyyzz
96ffaaa4d2 fpspreadsheet: Fix crash of db_import_export demo in virtual mode.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5993 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-08-09 22:52:49 +00:00
wp_xxyyzz
e688582c1c fpspreadsheet: Fix xlsx reader getting dimension of an empty worksheet incorrectly.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5988 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-07-25 09:40:05 +00:00
wp_xxyyzz
05bdb8bb88 fpspreadsheet: Fix violated file formation limitations when reading some xls files (http://www.lazarusforum.de/viewtopic.php?f=18&t=10824&start=15)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5987 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-07-24 15:18:13 +00:00
wp_xxyyzz
3aba9136ea fpspreadsheet: Add searching in comments. Add demo for searching.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5965 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-06-27 09:18:34 +00:00
wp_xxyyzz
aa308d6bd2 fpspreadsheet: Add functions to initialize search and replace parameter records.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5946 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-06-17 22:16:58 +00:00
wp_xxyyzz
7d59e20f9f fpspreadsheet: Fix crash of visual controls when workbook.RemoveAllWorksheets is called. Visual controls can handle the case of active worksheet = nil.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5937 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-06-14 16:40:36 +00:00
wp_xxyyzz
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
wp_xxyyzz
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
jesusr
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
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
wp_xxyyzz
2cf4c24eb5 fpspreadsheet: Cosmetic changes.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5545 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-12-19 22:20:55 +00:00
wp_xxyyzz
56009b4a89 fpspreadsheet: Add workbook methods to navigate to previous, next and last worksheet.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5543 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-12-19 22:19:00 +00:00
wp_xxyyzz
592312d0d7 fpspreadsheet: Avoid modification of Short/LongDateFormat in the workbook's FormatSettings. (see http://forum.lazarus.freepascal.org/index.php/topic,34988.msg230513/topicseen.html)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5401 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-12-01 23:59:21 +00:00
wp_xxyyzz
7d38a1fa62 fpspreadsheet: Improved handling of default cell format in ods.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5322 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-11-07 13:47:57 +00:00
wp_xxyyzz
0dd55ed594 fpspreadsheet: Fix conversion of rich-text parameters to html
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5319 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-11-06 16:07:29 +00:00
wp_xxyyzz
53062a527e fpspreadsheet: Fix detection of common row heights.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5318 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-11-06 08:37:07 +00:00
wp_xxyyzz
eb29f677d7 fpspreadsheet: Improved interpretation of text-position attribute by ods reader (see forum http://forum.lazarus.freepascal.org/index.php/topic,34687.msg227906.html).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5315 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-11-05 16:49:34 +00:00
wp_xxyyzz
c1983ae8a2 fpspreadsheet: Add property FormatTarget to TsCombobox for application of format to cell, row, column or default.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5297 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-10-31 22:50:56 +00:00
wp_xxyyzz
a93e9d16d6 fpspreadsheet: Write wikitable cells with row and column formats correctly
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5287 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-10-24 12:53:27 +00:00
wp_xxyyzz
027504e95f fpspreadsheet: Write row and column formats to html
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5286 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-10-23 14:12:30 +00:00
wp_xxyyzz
835f622ed6 fpspreadsheet: Fix fpsreaderwriter "using" the no-longer existing unit fpsregfileformats.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5283 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-10-22 21:07:29 +00:00
wp_xxyyzz
3e6dd484f7 fpspreadsheet: Fix compilation issues when fpc version is changed: separate package units into different folders, incorporate code of fpsnumformatparser in unit fpsnumformat and code of fpsregfileformats in units fpsreaderwriter. Check and fix all demos.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5282 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-10-22 20:59:00 +00:00