Commit Graph

73 Commits

Author SHA1 Message Date
2a25a3e64c fpspreadsheet: Fix range overflow if formula contains integers > 65535
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4619 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-04-13 10:03:47 +00:00
8025b4fd9e fpspreadsheet: Less hints and warnings
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4615 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-04-11 09:45:27 +00:00
233a4b43b4 fpspreadsheet: Remove/deprecate all color constants and color names exceot for the basic EGA colors.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4608 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-04-06 10:43:24 +00:00
313853b6e3 fpspreadsheet: Activate i16n for translation of strings. Add German translation. Some cleanup (hints & warnings).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4592 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-24 22:37:10 +00:00
5b946b751f fpspreadsheet: Add units (mm, cm, in, pts, lines/chars) for column width and row heights. Update all demos (some issues left).
NOTE: This revision breaks existing code if the worksheet's DefaultRowHeight/DefaultColWidth is changed - value must be in millimeters now. Methods for accessing individual row heiths and column widths are fine, but are marked as deprecated, they use the old units. Optionally a unit parameter can be specified.

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4568 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-18 19:50:40 +00:00
c8d5e0f95a fpspreadsheet: Add text format. Allow leading apostrophe to prevent conversion of a cell text to numbers.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4538 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-09 21:17:53 +00:00
8abea8d2f7 fpspreadsheet: Support for writing headers/footer images to xlsx. Remove some compiler hints and warnings.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4532 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-08 11:29:13 +00:00
e17429c92c fpspreadsheet: Load images for header/footer into workbook's embedded streams list.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4531 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-04 23:43:40 +00:00
f1c07951dd fpspreadsheet: Move PageLayout to separate unit (fpsPageLayout). Move PrintRanges and RepeatedRows/Cols to PageLayout. Some simplifiations because TsPageLayout is a class now. Prepare for images in header/footer.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4530 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-04 23:01:21 +00:00
58547464d3 fpspreadsheet: Initial support for embedded images. Writer for xlsx. Avoid writing relationship for non-existing files to xlsx. Add "numFmtId=0" to xlsx styles (seems to be mandatory for import to Access).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4528 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-03-03 19:12:58 +00:00
d2b80cf143 fpspreadsheet: Read print ranges and repeated print rows and columns from BIFF5 and BIFF8 files (xls - BIFF2 does not support them).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4512 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-02-19 19:53:10 +00:00
22c42622a2 fpspreadsheet: Add printranges and repeated header cols/rows (for printing) to worksheet. Implement writing to xlsx and ods. (Request from the forum http://forum.lazarus.freepascal.org/index.php/topic,31496.0.html).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4496 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-02-13 17:45:36 +00:00
8184c4b609 fpspreadsheet: Add cell-based BiDiMode. Read/write to/from biff8, xlsx, ods.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4469 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2016-01-25 18:55:33 +00:00
48c33e0c1c fpspreadsheet: Massive reconstruction of file format registration: it is now possible to add user-defined readers and writers without modifying the fpsspreadsheet sources (--> new unit fpsregfileformats). Add (incomplete) unit for the SYLK file format (---> new unit fpssylk) to show this in the demo project visual/fpsctrls/demo_ctrls. Update all visual demos.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4373 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-10-09 13:27:04 +00:00
535273462f fpspreadsheet: Simpler access to clipboard.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4372 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-10-06 12:01:35 +00:00
6fb4bb9c9b fpspreadsheet: Introduce additional parameter ("AParam") when saving workbooks.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4367 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-10-04 13:12:46 +00:00
86b7e99ac9 fpspreadsheet: Paste cell, value, format or formula from clipboard
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4356 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-09-24 17:35:38 +00:00
32343a87a3 fpspreadsheet: Add support for frozen panes to ExcelXML writer.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4351 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-09-21 21:54:49 +00:00
f2f4ce227a fpspreadsheet: Fix formulas in ExcelXMLWriter. Fix excelxmlwrite demo.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4346 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-09-20 21:01:57 +00:00
0dc5a6e45e fpspreadsheet: Add writer for ExcelXML files (Office XP and 2003, will be needed for clipboard operations); formulas and rich-text not functional, yet.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4338 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-09-19 22:55:18 +00:00
a5cbacff27 fpspreadsheet: Add "replace" to search engine.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4316 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-09-08 21:43:02 +00:00
49dea52ee1 fpspreadsheet: Redo searching (better OO code), some identifiers renamed with respect to initial commit.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4313 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-09-07 15:48:43 +00:00
9bcaed5b25 fpspreadsheet: Fix reading error in ods related to rich-text fonts
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4309 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-08-31 21:32:59 +00:00
e0fdad55fd fpspreadsheet: Fixes font stack used by html reader; now takes into account fonts declared in the <BODY> and <TABLE> tags. Define constant FPS_LINE_ENDING for multiline cell text.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4263 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-08-10 20:54:37 +00:00
b16695f420 fpspreadsheet: HTML reader respects embedded <B>, <I> etc tags.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4258 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-08-08 20:56:28 +00:00
62355e2d51 fpspreadsheet: Re-do rich-text format (easier, less code). Fix rich-text issues with utf8 characters.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4257 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-08-08 16:23:49 +00:00
b6a8d809bb fpspreadsheet: Support for all line styles of biff8 and ooxml.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4228 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-07-30 17:15:48 +00:00
9bf5e60e90 fpspreadsheet: Initial commit of html writer.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4218 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-07-28 22:13:48 +00:00
ef69632cea fpspreadsheet: Initial version of searching in workbook/worksheet, not perfect yet.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4214 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-07-27 23:01:52 +00:00
a838fe2707 fpspreadsheet: A bunch of updates have run up...
- Activate ReadFromStream from xls5/8, xlsx, and ods readers (issue #0028389)
- Fix ods using correct hyperlink font
- Rich text formatting runs for xls5/8, xlsx, ods (both reading and writing)
- BIFFExplorer: show details of rich-text formatting runs for SST and RSTRING records

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4211 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-07-26 12:40:51 +00:00
5b319c45bf fpspreadsheet: Fix rich-text ignoring non-ansi characters. Beginning to handle rich-text formatting runs when reading biff5 files.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4204 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-07-09 15:29:44 +00:00
9b89738158 fpspreadsheet: Extend TsFont for sub-/superscripts. Initial implementation of "rich-text" cell format: display in WorksheetGrid and SpreadsheetInspector, read from xlsx, extend TsWorksheet.WriteUTF8Text() for rich-text formatting runs.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4203 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-07-09 11:10:15 +00:00
272db02859 fpspreadsheet: Change package version numbers to 1.6 for next release. Update chm help file.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4175 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-06-03 11:07:39 +00:00
0d7bdfa06c fpspreadsheet: Move TsCellFormatList from fpsTypes.pas to fpsClasses.pas. Updated chm help file after proof-reading.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4173 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-06-01 19:58:26 +00:00
694c87f585 fpspreadsheet: Update chm help file
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4172 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-06-01 13:55:40 +00:00
6eacf13d99 fpspreadsheet: Move all numberformat-related procedures/functions to unit fpsnumformat.pas. Check all demos.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4170 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-31 20:28:25 +00:00
750a0c68f5 fpspreadsheet: Move some general procedures from fpspreadsheet.pas to fpsutils.pas
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4168 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-31 16:34:40 +00:00
61a55feef8 fpspreadsheet: Release restriction on max 21 numberformats for writing biff2 files; extra formats not read correctly by Excel although I know from Office97 that there can be more than 21 formats in a biff2 file. Add some more unit tests for number format parser.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4166 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-30 22:09:53 +00:00
e2ddc7c705 fpspreadsheet: Extend number format parser to accept the keyword "General" in custom formats
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4161 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-29 21:35:07 +00:00
545bd7ed0f fpspreadsheet: Major reconstructor of color management: no more palettes now, use direct rgb colors instead. May break existing code - sorry! Update all demos and unit tests (passed).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4156 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-28 20:08:24 +00:00
2d35913169 fpspreadsheet: Add support for number formats splitting off thousands, (Excel syntax "0.0,"), millions ("0.0,,"), etc.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4130 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-15 17:33:24 +00:00
400ffe6431 fpspreadsheet: Fix writing of header/footer fonts to ods files. Some cleanup.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4127 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-12 20:51:18 +00:00
4e420fa876 fpspreadsheet: Add unit tests for some more page layout properties (Fit width/height to pages, start page number) (completing the first 1000 test cases...)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4113 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-04 17:38:56 +00:00
dfa4df2c1e fpspreadsheet: Write page layout to ods. Fix some page-layout-related bugs for ooxml.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4109 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-02 23:04:59 +00:00
3902f75dfc fpspreadsheet: Read page layout from ods file (some simplifications, though)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4107 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-01 22:51:01 +00:00
e66caefbe0 fpspreadsheet: Add headers and footers to the pagelayout record, implemented for all Excel formats (reading & writing).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4104 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-05-01 15:14:25 +00:00
82117326a4 fpspreadsheet: Add some more page layout properties (page size, orientation etc) for all Excel and ods formats (ods implementation, however, not correct at the moment).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4103 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-04-30 21:55:55 +00:00
4f520e0bf2 fpspreadsheet: Add PageLayout record to Worksheet; implement reading and writing of page margins for xlsx.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4102 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-04-29 20:00:07 +00:00
3a2b5f2aad fpspreadsheet: Add support for fraction formats having a fixed denominator ("# ?/4" for quarters, etc.)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4101 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-04-29 16:23:07 +00:00
de39db4c01 fpspreadsheet: Fix comiliation error w/ fpc-trunk (issue 0027978)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@4099 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2015-04-27 09:44:21 +00:00