Commit Graph

212 Commits

Author SHA1 Message Date
Thomas Fussell
a560756b35 use clang-format, fix some small warnings 2019-12-26 12:03:12 -05:00
Thomas Fussell
e2262a0c65
Merge pull request #421 from Crzyrndm/experimental/sheet-data-parser
Accelerated worksheet parsing
2019-12-19 16:24:51 -05:00
Thomas Fussell
edb27e84f8
Merge pull request #425 from yschungmr/hotfix/gcc-5-build-bug
Fixed gcc 5 build bug
2019-12-19 16:13:48 -05:00
Johann1994
d6262df555
Shared strings
It can happen that some strings are not unique in sharedstring table
2019-12-18 13:53:23 +01:00
Youngsuk Chung
8e2f197f70 Fix indentation 2019-12-09 14:52:07 +09:00
Youngsuk Chung
c8bda73f01 Fix g++-5 build bug (Fix #385)
Tested on g++ (Ubuntu 5.4.0-6ubuntu1~16.04.12) 5.4.0 20160609

Note: Actually,it is not a BUG. It is compiler related issue. The issue #385 is not shown in g++-6 and clang.
2019-12-09 14:46:12 +09:00
JCrawfy
f2ad495326 resolve warnings, remove failing test (CI doesn't know what locale "de-DE" is?) 2019-11-18 21:45:46 +13:00
JCrawfy
97841413fa fixed more parsing errors, added test for ',' locale serialisation (it fails...) 2019-11-18 21:12:21 +13:00
JCrawfy
a25187f788 fix using attribute<double> (causes bugs when '.' is not the decimal separator 2019-11-18 20:46:34 +13:00
JCrawfy
d69a5dea75 scan and replace '.' with ',' when decimal separator is comma 2019-11-18 19:55:13 +13:00
JCrawfy
2eb88c23d6 move numeric utils into the public headers
resolves #398
2019-11-18 19:25:02 +13:00
JCrawfy
a6fd7cc2b8 skip the user facing types, deal direct with the impls
this was being done already in most cases, and allows some simplification
e.g. no need to check if something is already present, since we're starting with a blank
2019-11-17 13:15:00 +13:00
JCrawfy
2b61cac3dc move helper functions and types to top of file ( namespace {} ) 2019-11-17 11:55:49 +13:00
JCrawfy
600cc9d000 specialised string equality template for literals strings
1-2% improvement seen locally
2019-11-17 11:11:33 +13:00
JCrawfy
001606a77c cleanup and comments 2019-11-17 10:41:05 +13:00
JCrawfy
2307ed4edf exceptions, not asserts 2019-11-16 19:49:17 +13:00
JCrawfy
a580079702 and more warnings suppressed 2019-11-16 15:03:28 +13:00
JCrawfy
96beae421f matchup integer types 2019-11-16 14:49:58 +13:00
JCrawfy
9d687eaf49 remove all usages of strtod_c 2019-11-16 14:30:40 +13:00
JCrawfy
e059d259c7 specialise number_converter when strtod_l is available
in load benchmark, not using the specialisation adds ~10% to execution time
2019-11-16 14:18:33 +13:00
JCrawfy
ea532c5c46 resolve some warnings 2019-11-16 14:16:45 +13:00
JCrawfy
c26a59f32e fix compile error due to reference to r-value that MSVC silently lifetime extended 2019-11-16 12:49:26 +13:00
JCrawfy
ec29e227d4 slightly optimise cell parsing routine, fix formula being incorrectly loaded 2019-11-16 12:17:07 +13:00
JCrawfy
8eda9f226f parse height as a double 2019-11-16 11:54:55 +13:00
JCrawfy
d83ed0b200 handle whitespace in xml (e.g. '\n' because sheet was pretty printed) 2019-11-16 11:40:43 +13:00
JCrawfy
b27e7fe07e rewrite the sheet data xml parse logic
a few hacks still, but a very noticeable speed up (2.2 -> 1.1 seconds on large.xlsx)
2019-11-16 11:28:00 +13:00
Thomas Fussell
a978e73354 change orientation name in default case 2019-09-15 11:26:39 -04:00
Thomas Fussell
cc88c4829b fix frozen first rows/columns for #369 2019-07-07 11:17:00 -04:00
Thomas Fussell
9f1b2ed4c8 Merge branch 'dev' of github.com:tfussell/xlnt into dev 2019-07-06 14:21:13 -04:00
Thomas Fussell
90b672cf6b Merge branch 'Issue#318_fp-equality' of https://github.com/Crzyrndm/xlnt into Crzyrndm-Issue#318_fp-equality 2019-07-06 14:20:53 -04:00
Thomas Fussell
01cd2a3e3f
Merge pull request #346 from Crzyrndm/Issue#335
GCC5 compatibility + CI
2019-07-06 12:03:53 -06:00
Thomas Fussell
40baecdf02 Merge branch 'images' of https://github.com/kostasdizas/xlnt into kostasdizas-images 2019-07-06 14:02:24 -04:00
Thomas Fussell
d5172d8bcd implement writing of rich text phonetic properties and phonetic runs 2019-07-03 17:47:28 -04:00
Thomas Fussell
7c9443dca9
Merge branch 'dev' into issue165-xlsx-producer 2019-07-03 13:36:25 -06:00
Thomas Fussell
1c22e9781e
Merge pull request #364 from kostasdizas/phonetics
Added support for phonetic fields
2019-06-22 10:53:09 -04:00
Thomas Fussell
b6455ff6d1
Merge pull request #356 from kostasdizas/issue353
Fixed block calculation in xlsx_producer
2019-06-22 10:52:14 -04:00
Thomas Fussell
f54a150589
Merge branch 'dev' into phonetics 2019-06-22 10:51:30 -04:00
Kostas Dizas
38afc61219
Update the format elements when setting the cell style. 2019-03-07 00:26:32 +00:00
Kostas Dizas
38f12ff846
Serialise phonetic runs and properties 2018-11-21 13:43:42 +00:00
Kostas Dizas
e9118cff24
Serialise phonetics visibility for cells 2018-11-21 13:04:07 +00:00
Kostas Dizas
dde45fd17f Fixed block calculation in xlsx_producer 2018-10-19 23:19:23 +01:00
Kostas Dizas
3ab49c8af6 Importing row spans in the row_properties object 2018-10-19 20:48:54 +01:00
Kostas Dizas
b6f0d0a7e1 Fixed the uninitialised bool on a rich_text_run 2018-10-13 09:11:26 +01:00
Kostas Dizas
61639c7275 Added write_rich_text method to xlsx_producer
This eliminates some duplicate code as reported in #165
2018-10-12 19:56:09 +01:00
Kostas Dizas
698b40c54c Added basic support for embedded images 2018-10-12 13:52:30 +01:00
Crzyrndm
ed05bfeb44 Rename parameter to avoid ambiguous parameter
-- Issue#335
2018-09-15 19:50:59 +12:00
Crzyrndm
a28f3fb7a9 zstream implicit conversion warning 2018-08-18 18:37:19 +12:00
Crzyrndm
4487b988e7 Define fp equality function
-- Based on checks and defaults used by various testing frameworks (primarily GTest and Catch)
-- Moved the header into detail where it should have been to start with (oops)
2018-08-14 22:48:28 +12:00
Crzyrndm
10c5781e6d
Merge pull request #323 from Crzyrndm/build_system_improvements
Build system improvements + stylesheet optimisations
2018-08-05 14:15:09 +12:00
Crzyrndm
138c90883b Modify writer benchmark to make comparisons between column and row usage
- Cut time to write a sheet with many rows by not calling highest_row inside a loop over the rows (On^2 -> On)
- Observation: more memory is used / cell as the number of rows increases
2018-07-29 10:11:00 +12:00
Crzyrndm
ade8cf3b6c Ensure <color tint=...> is correctly serialised as an optional double 2018-07-28 14:44:49 +12:00
Thomas Fussell
94faf01b72
Merge pull request #320 from sukoi26/SheetFormatPr
SheetformatPr issue #287
2018-07-24 23:42:51 -04:00
Thomas Fussell
cbe50f4681 Fix some issues after merge 2018-07-23 00:13:20 -04:00
Thomas Fussell
0af7ad88e1 Merge branch 'tasmail-master-shared-strings-performance' into dev
remove less than comparators

fix conflicts
2018-07-23 00:10:16 -04:00
sukoi26
8f4248d9c3
change SheetFormatPr
change "defaultRowHeight" not optional
2018-07-22 18:44:31 +02:00
Crzyrndm
ad24d9485d Resolve CI warning about using an uninitialised variable 2018-07-21 12:19:15 +12:00
Crzyrndm
761eee3e5f
Merge pull request #314 from Crzyrndm/dev-CI-build-modifications-PR
Travis CI improvements
Resolves #147
2018-07-21 12:04:56 +12:00
sukoi26
a2dc4a34f1
update bestFit commit
error compiling  std::vector<std::string>
2018-07-19 13:53:54 +02:00
sukoi26
4f9e8ab37f
bestFit change
remove from skip_attributes list
2018-07-19 12:49:32 +02:00
Crzyrndm
ad759ae4f7 fix for build failure with GCC8{-std=c++17} 2018-07-16 19:08:19 +12:00
Crzyrndm
11573f45e6 Resolve remaining warnings 2018-07-14 20:25:10 +12:00
Crzyrndm
9a33210144 Resolve warnings about global ctors and an unused variable
-- while unlikely to become an issue, ordering of ctors across source files is undefined and debugging issues related to it is not easy so just avoid that issue
2018-07-14 19:54:31 +12:00
sukoi26
28a71572cf
update #290
suggested by  Crzyrndm
2018-07-10 09:32:34 +02:00
sukoi26
99f20a014a
error what(): xl/sharedStrings.xml: error: duplicate attribute #290 2018-07-09 18:21:01 +02:00
Crzyrndm
e0d62b0835 Cleanup from review 2018-06-26 20:32:59 +12:00
Crzyrndm
3d3a59012a extLst element round tripped 2018-06-25 23:12:35 +12:00
Crzyrndm
4ff68319b0 Fix CI build warnings 2018-06-25 21:45:40 +12:00
Crzyrndm
8ba7f5b45d default is not a contextual keyword 2018-06-25 21:41:25 +12:00
Crzyrndm
840d1bcefc Serialisation of extLst without namespace support
-- roundtripping namespaces requires modifications of the parser used for the entire worksheet as there does not appear to be a way to track the namespace changes without listening/registering for the event. This (ofcourse) breaks lots of other things...
2018-06-24 23:08:23 +12:00
Crzyrndm
a347d9c05d ext_list parsing for worksheets 2018-06-24 21:25:58 +12:00
Crzyrndm
e8fcd49c0d Add serialisation of "topLeftCell" sheetView attribute 2018-06-24 14:19:03 +12:00
Crzyrndm
d2d0c2ab55 Serialisation of sheetPr and printOptions elements 2018-06-24 14:02:01 +12:00
Crzyrndm
93323f334d Basic pageSetup persistence
-- NOTE: The struct page_setup doesn't currently reflect the attributes of the pageSetup element
2018-06-24 12:34:56 +12:00
Crzyrndm
7820ac548f re-save custom_heights_widths.xlsx, add defaultColWidth sheet attribute
-- custom_heights was the only test sheet where the integral value was being saved with a trailing ".0"
-- Updated tests to expect the new values
-- added the new property "defaultColWidth"
2018-06-24 11:53:45 +12:00
Crzyrndm
884558fd15 Write numbers using a standard formatter (15sf to match excel) 2018-06-24 11:06:02 +12:00
Crzyrndm
f62e5fe5f7 Fix every 16th row (17, 33, ...) having data dropped 2018-06-24 10:20:30 +12:00
Crzyrndm
d81555dbae Add "bestFit" column attribute serialisation 2018-06-24 10:13:27 +12:00
Crzyrndm
3eb06bac0d serialisation of custom row format property added 2018-06-23 22:29:57 +12:00
Crzyrndm
5817ef5cf0 Add serialisation of worksheet phonetic properties 2018-06-23 12:15:15 +12:00
Crzyrndm
5a14d7b9d1 suppress conversion warnings
-- tolower takes chars and returns chars, types are int because C only deals with ints
-- format parameter is size_t but there is no std parsing function that returns size_t. stoull is used instead as the widest alternative, and then the cast is applied to suppress the conversion warnings
2018-06-18 23:24:13 +12:00
Thomas Fussell
e350a7734d implement abspath and archid flags, fixes some serialization problems 2018-05-28 23:13:57 -04:00
Thomas Fussell
6eb16243ca work on round-tripping for #230 2018-04-24 19:43:34 -04:00
Thomas Fussell
50850ffb8a work on round-tripping for #230 2018-04-24 17:58:17 -04:00
Thomas Fussell
617f7a2525 improve hyperlinks and style round tripping 2018-03-21 09:03:37 -04:00
Thomas Fussell
410e73d594 work on hyperlinks, x14 extentions, other round tripping silliness 2018-03-16 21:21:16 -04:00
Thomas Fussell
2426215801 implement sheet view serialization 2018-03-14 20:12:07 -04:00
Andrii Tkachenko
403605a536 xLnt. shared string performance optimization. 2018-02-08 09:52:10 +01:00
Thomas Fussell
0f0d3de75f implement sheetFormatPr, x14ac:dyDescent, reordering workbook rels so sheets come first after insertions 2018-01-26 14:32:00 -05:00
Thomas Fussell
90633d0e8e copyright year bump (2018) 2018-01-22 09:38:48 -05:00
Thomas Fussell
44a8c8e79e minor reformatting 2017-12-09 16:04:44 -05:00
Thomas Fussell
1c85188ec6 Merge branch 'dev' of https://github.com/sukoi26/xlnt into sukoi26-dev 2017-12-09 15:45:49 -05:00
Thomas Fussell
a653a39544 reformat a little 2017-12-08 15:31:25 -05:00
Thomas Fussell
182dea155b Merge branch 'dev' of github.com:tfussell/xlnt into dev 2017-12-08 15:20:36 -05:00
Thomas Fussell
20c7d3437c
Merge pull request #248 from tlanc007/cellPropertyColors
custom_value_traits.hpp: pattern_fill from_string() ignores case
2017-12-08 14:37:24 -05:00
tal
b008eacd89 custom_value_traits.hpp: pattern_fill from_string() ignores case
Values like lightGray will match with lightgray.  Unexpected inputs will
be ignored and return none.

Needs prama to clang to be happy.
2017-11-22 12:44:49 -07:00
TataMata
d0bacf548c
Reformatted source
Reformatted pull request to match the library formatting style.
2017-11-12 10:34:51 +01:00
sukoi26
4f07495abb
optimize latest commit missing a test 2017-11-06 14:12:08 +01:00
TataMata
b899c9db5c
Fix bug in cell style assingment
There was a bug introduced in version 1.2 in reading styles. As from the Office Open XML documentation:
2017-11-06 11:55:06 +01:00
sukoi26
caeadfc83c optimize code empty row cell 2017-11-04 23:41:48 +01:00
sukoi26
4a3e711a1b bug introduce by the commit continue work on #230, improves style/xf handling
as the style exist it is rewritten in cellStyleXfs and cellXfs,
with  the fillId test for format and style. remove the test and use only the format.
2017-11-04 18:12:38 +01:00