Commit Graph

254 Commits

Author SHA1 Message Date
11e09b888c fpspreadsheet: Read the background color of ods files. Background color of ods files is displayed in fpsGrid. Fix border partially not showing.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3107 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-05-27 13:58:57 +00:00
632b9d6200 fpspreadsheet: Add ods reading support for cell borders, border line styles and border colors. Borders of ods files are displayed in fpsgrid correctly.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3106 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-05-27 13:09:23 +00:00
97ded8dfab fpspreadsheet: Beginning to apply .ods formatting styles to cells
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3103 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-05-26 22:27:07 +00:00
85e2de8340 fpspreadsheet: Read date/time number formats from ods (not applied, yet)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3102 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-05-26 19:43:05 +00:00
d29219fc68 fpspreadsheet: Mark TsSpreadsheet.GetLastColNumber/GetLastRowNumber as deprecated, use GetLastColIndex/GetlastRowIndex instead.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3101 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-05-26 15:27:35 +00:00
f1a1a4474a fpspreadsheet: Fix issue http://mantis.freepascal.org/view.php?id=26221 (empty cells misplace following cells in .ods)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3100 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-05-26 15:00:43 +00:00
070845d3ae fpspreadsheet: Add property "Name" to TsNumFormatData. When reading ods files consider also styles in "styles.xml".
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3099 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-05-26 08:03:36 +00:00
a4bc6fc8cf fpspreadsheet: Beginning to read number formatting styles from ods file (so far, just populating the number format list)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3098 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-05-25 22:05:37 +00:00
00ed56d1ef fpspreadsheet: Integrate number format parser into fpspreadsheet. Some regressions in format detection...
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3068 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-05-20 16:13:48 +00:00
db28686b2f Cosmetic
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3065 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-05-20 12:36:07 +00:00
283a28fabd fpspreadsheet: Fix crash of unit test. Still some number format detection issues.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@3046 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-05-14 23:17:46 +00:00
887b34383a fpspreadsheet: Add font unit test for BIFF2. Currently fails. Need to investigate...
Fix occasional floating point conversion error in fpsopendocument because of non-initialized format settings.

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2963 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-04-24 22:31:01 +00:00
f69a47c902 fpspreadsheet: Add/complete color support for biff2 and biff8, reading and writing. Display colors in fpspreadsheetgrid.
Remove parameter AData in several methods of the readers/writers and replace it by FWorkbook passed at creation.
Add unit tests for font and color support. No issues.

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2960 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-04-23 22:29:32 +00:00
f7f1b0f12a fpspreadsheet: Add support for empty cells to all BIFF formats (needed for formatting of empty cells).
Fix painting error of cell borders in fpspreadsheetgrid.
Add/complete reading/writing support for horizontal alignment, cell background and cell borders to BIFF2.

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2958 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-04-21 21:43:43 +00:00
4f85834153 fpspreadsheet: Restructure reader/writer declarations to have in "public" only methods needed by the application
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2957 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-04-21 11:30:22 +00:00
435cc15729 * Replace XLSDEBUG define for writeln debug output to FPSPREADDEBUG as it is used beyond just xls support.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2932 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-04-08 09:53:02 +00:00
f95e48563a * OpenDocument .ods: tweaked support for reading time only fields introduced in r2908: fixes for 1899/1900/1904 date mode. Still needs more tweaks for 1904 date mode (and presumably 1900 as well)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2924 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-03-26 10:26:43 +00:00
cc13dd5c5f OpenDocument .ods:
* ignore invalid times



git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2915 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-03-24 07:34:00 +00:00
12a4c4c07b * LibreOffice/ODS format: fix time-only calculations exceeding EncodeDate limits
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2909 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-03-23 13:06:19 +00:00
b70f1be9c3 + OpenDocument .ods: initial support for reading time only fields. To do: needs additional support for 1900/1904 date mode.
+ OpenDocument: naive speed improvement for reading repeated rows/columns.



git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2908 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-03-23 11:36:36 +00:00
400bf62aba * OpenDocument/OpenOffice/LibreOffice date/time read fix; code adapted from curtisnewton, thanks a lot! Fixes mantis issue #25585
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2890 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2014-01-24 10:32:23 +00:00
018f05324b + Initial write date/time cell support for opendocument/OpenOffice/Libreoffice
To do: adjust test suite for .ods files



git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2867 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2013-12-23 13:35:36 +00:00
6a4ff4c1c2 * Correction to r2863: use ISO 8601 format for WriteDateTime text output (currently every format except BIFF8 xls).
Ensures resulting files are interoperable regardless of OS locale settings, conforming to date/time cell support in BIFF8.



git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2865 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2013-12-23 12:11:20 +00:00
7f7d07f151 + Add support for text/number/date formats in BIFF8/xls.
+ Add support for writing out date/time to non-BIFF8 xls (though as text only for now)
  Slightly modified patch by wp, thanks a lot. 
  See
  http://forum.lazarus.freepascal.org/index.php/topic,22940.msg136761.html#msg136761

Still to do: add test cases for invalid format strings



git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2863 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2013-12-22 14:02:04 +00:00
abd8d0bea8 + Add date/time/datetime read/write support for BIFF8 xls format. No plans for earlier formats though the code could be adapted
+ XLS BIFF8: added DATE and TIME worksheet functions to RPN formula
* Allow writing formulas,numbers etc using cardinals increasing row/column limits for formats that support it.
* Add checks for text cell size limits when writing xls, xml. If exceeded, cell text will be truncated (better than corrupting the xls file - e.g. try to open it with Excel 2002 - as happens now with xls format)
* Formats that use fpspreadsheet zip have extra checks to prevent crashes for invalid zip dates
+ Use FPC built-in zip format when using FPC 2.7.1+ as it has fixes/improvements (e.g. zip64 support)
+ Added FPCUnit test suite to test reading and reading writing files. For now uses BIFF8 xls; contributions for other formats and more tests welcome. See the tests subdirectory.
+ Add link to msodumper tool for reference/debugging/troubleshooting .xls output

Fixes Mantis bugtracker issue #25388



git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2857 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2013-12-07 13:42:22 +00:00
238e173677 fpspreadsheet: Adds support for RGB colours
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2750 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2013-06-12 11:02:02 +00:00
af3ee31a25 fpspreadsheet: Adds support to writing the formatting of formula and number cells in XLS
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2671 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2013-02-12 11:29:19 +00:00
ca0980e0ed fpspreadsheet: Patch from bug 21400, adds date reading support to the ods reader
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2599 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2012-12-11 16:46:25 +00:00
6962323c2e fpspreadsheet: OpenDocument: Adds support for word-wrap formatting option and fixes the styles setting for numeric cells
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2463 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2012-06-13 07:21:00 +00:00
0ee4ede6b0 fpspreadsheet: Fixes using always point for numbers in OOXML and adds a solution to initialize the format settings in the constructor of the writer
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2410 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2012-04-27 08:01:15 +00:00
54e28dd0db Implements the possibility to save a TZipper to a TStream and uses that
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@1862 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2011-08-29 11:59:47 +00:00
e23fbc9f1d FPSpreadsheet: Improves the comments
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@1658 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2011-05-30 07:03:56 +00:00
a267e89ae8 FPSpreadsheet: Patch from bug 19422: Copy file OSD with
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@1657 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2011-05-29 17:42:56 +00:00
fdc4538c45 Implements flexible style writting for OpenDocument. Implements support for bold, border and background color
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@1653 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2011-05-27 13:45:30 +00:00
979180ddd9 Adds bold style support to OpenDocument
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@1400 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2010-12-08 10:24:15 +00:00
1389a835d1 Adds excel 8 writting example and starts implementing formatting
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@1264 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2010-07-30 06:44:53 +00:00
06ae369ff5 Improves FPSpreadsheet examples and improves the Grid component
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@1229 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2010-05-25 09:11:02 +00:00
c429d42414 Opendocument XML.Widestring->UTF8String conversion. Bug: 2897793 by Luiz Camara.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@1013 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-11-16 12:46:31 +00:00
758a46563d Fixes 2897681 and 2897708 reported by Luiz Camara.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@1007 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-11-14 18:48:17 +00:00
8c0fa3a08d Fixed bugs 2896335 and 2896338 in sf tracker.
Fixed loading of OpenDocument float values (locale independent)
Fixed loading of OpenDocument with infinite "1.#INF" value in a cell.
Decompression of "contents.xml" now tales place in local temporal user folder.


git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@1002 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-11-12 20:26:02 +00:00
519e75d5a6 fpspreadsheet: Implements support to setting if existing files should be overwritten or not
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@993 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-11-08 19:21:23 +00:00
75dd051f39 Fixed memory leak in WriteWorksheet.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@953 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-09-03 12:04:04 +00:00
c9cad114e8 Applied patch from Torsten Bonde Christiansen ( http://bugs.freepascal.org/view.php?id=14480 ) with some minor changes. Big speedup reading spreadsheets.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@952 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-09-02 22:03:01 +00:00
7f32d73b05 Fixed reading in non US locales (decimal separator = '.') of floating point data in Open Document.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@949 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-09-02 01:22:46 +00:00
416b85851f fpspreadsheet: opendocument format, write numbers without localized decimal separator, fixes https://sourceforge.net/tracker/?func=detail&aid=2813780&group_id=92177&atid=599764
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@889 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-07-01 14:01:44 +00:00
b9af2f71bb fpspreadsheet: Adds OpenDocument read support from José Luis Jurado Rincón
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@888 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-07-01 11:26:56 +00:00
0ccb66c492 Patch from JoshyFun to fix OOXML files
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@778 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-04-18 01:31:09 +00:00
933d8a5b44 fpspreadsheet: Improves OpenDocument support
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@692 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-02-02 09:58:51 +00:00
7e67d5e83e fpspreadsheet: Improves OpenDocument support and moved back to 0-based grid
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@688 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-01-29 13:24:37 +00:00
87fe92f9d7 fpspreadsheet: Improves OpenDocument support
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@687 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2009-01-29 11:54:07 +00:00