Commit Graph

979 Commits

Author SHA1 Message Date
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
Matthew Albrecht
9eee8ec0bb
Check for existing uninstall target before creating. 2019-09-20 15:13:09 -05:00
Thomas Fussell
a978e73354 change orientation name in default case 2019-09-15 11:26:39 -04:00
Thomas Fussell
a1d46694c1 Merge branch 'add-all-locales' into dev 2019-09-15 11:25:39 -04:00
Thomas Fussell
90ddaedc81 Merge branch 'master' into dev 2019-09-07 21:10:11 -04:00
Alessandro Bettarini
2b221fec81 Prevent throwing exception when encountering country code 10485 2019-09-07 11:32:49 +02:00
Thomas Fussell
df0626579b add all windows locales as a workaround for #407 2019-09-05 15:37:55 -04:00
Thomas Fussell
cc88c4829b fix frozen first rows/columns for #369 2019-07-07 11:17:00 -04:00
Thomas Fussell
be7a91f7be try default password on read failure, closes #161 2019-07-06 15:29:04 -04:00
Thomas Fussell
ba01de47a7
Merge pull request #345 from kostasdizas/issue165-compound-document
Removed duplicate code in compound document
2019-07-06 12:23:09 -06: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
1e52c06376 Merge branch 'dev' of github.com:tfussell/xlnt into dev 2019-07-06 14:02:50 -04: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
076c421a1f
Merge pull request #332 from Erroneous1/master
Export xlnt::xlnt target when installed.
2019-07-05 06:21:40 -06: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
123ecc95fe
Merge branch 'dev' into issue378-unicode_title 2019-06-22 10:54:20 -04: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
Thomas Fussell
e11188ccd1
Merge branch 'dev' into issue378-unicode_title 2019-06-22 10:48:35 -04:00
Thomas Fussell
b1a2f6d0bf
Merge pull request #382 from kostasdizas/issue374-format
Update the format elements when setting the cell style
2019-06-22 10:43:41 -04:00
Thomas Fussell
595397994f
Merge pull request #359 from kostasdizas/issue254
Corrected the calculation and formatting of weekdays
2019-06-21 17:52:14 -04:00
Thomas Fussell
938d99ddc5
Merge pull request #363 from pmir/fix-relationship-ordering
Fix relationship sorting
2019-06-21 17:49:20 -04:00
Thomas Fussell
7e22fad735
Merge pull request #329 from Crzyrndm/Issue#327
Relative hyperlinks
2019-06-11 20:40:36 -04:00
Kostas Dizas
38afc61219
Update the format elements when setting the cell style. 2019-03-07 00:26:32 +00:00
Kostas Dizas
d4b36b6582
Added support for unicode sheet titles
Fixes #378
2019-02-28 20:29:17 +00:00
Kostas Dizas
36d6b9823d
Adjust merged cells when moving cells 2018-12-02 03:18:37 +00:00
Kostas Dizas
38f12ff846
Serialise phonetic runs and properties 2018-11-21 13:43:42 +00:00
Kostas Dizas
e9c23c3fc7
Add phonetic runs and properties to rich text 2018-11-21 13:43:31 +00:00
Kostas Dizas
e9118cff24
Serialise phonetics visibility for cells 2018-11-21 13:04:07 +00:00
Kostas Dizas
48a865cd66
Added phonetics field visibility option on cells 2018-11-21 13:03:02 +00:00
przemekmirek
5a44433291 Fix relationship sorting 2018-11-08 20:47:58 +01:00
Kostas Dizas
03198f7e40 Corrected the calculation and formatting of weekdays
and relevant unit tests
2018-10-28 20:32:46 +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
db5abec894 Worksheet dimension should include lowest props 2018-10-19 20:47:35 +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
Kostas Dizas
23fcfd636b Removed duplicate code in compound document 2018-10-01 13:31:32 +01:00
Crzyrndm
ed05bfeb44 Rename parameter to avoid ambiguous parameter
-- Issue#335
2018-09-15 19:50:59 +12:00
Kostas Dizas
c804b4c569 Added new feature to insert and delete rows and columns 2018-09-11 09:44:43 +01:00
Aaron Bishop
0d76afb801 Fix using variable before defining it 2018-08-26 07:36:24 -04:00
Aaron Bishop
37638f6d2b Use cache path for *_DEST_DIR
Use GNUInstallDirs
Prefix cache variables with XLNT_
Combine multiple target_include_directories
2018-08-25 09:39:39 -04:00
Crzyrndm
875f143d74 fix parameter ordering inconsistency that could cause switching the parameters to give different results 2018-08-25 13:31:16 +12:00
Crzyrndm
4188d35caf Add tests for the other small utilities 2018-08-19 15:11:57 +12:00
Crzyrndm
a28f3fb7a9 zstream implicit conversion warning 2018-08-18 18:37:19 +12:00
Crzyrndm
9e78e55c62 Another missing include 2018-08-18 18:16:39 +12:00
Crzyrndm
61e46c934a resolve float-equals warnings 2018-08-18 18:12:46 +12:00
Crzyrndm
8b30319514 missing include 2018-08-18 17:31:25 +12:00
Crzyrndm
d7603964e9 another compile error 2018-08-18 17:28:31 +12:00
Crzyrndm
3a10e661b8 constexpr concern no longer valid 2018-08-18 17:24:34 +12:00
Crzyrndm
edafcd1bb5 More compile fixes 2018-08-18 17:23:04 +12:00
Crzyrndm
6aa10131a2 Fixing compile errors 2018-08-18 16:51:53 +12:00
Crzyrndm
7b05beae90 unsupress fp equality warnings 2018-08-18 16:34:31 +12:00
Crzyrndm
3db87244f1 Compare numeric cell values using float_equals 2018-08-18 16:24:32 +12:00
Crzyrndm
68589d91eb default float for epsilon
-- Even if both arguments are doubles, they may have been promoted by a previous operation and then the comparison would fail
2018-08-15 18:19:36 +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
Aaron Bishop
ecf402972b Export xlnt::xlnt target when installed.
Usage:
find_package(Xlnt)
target_link_libraries(foo PRIVATE xlnt::xlnt)
2018-08-07 09:08:29 -04: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
94fd22f492
Merge pull request #321 from Crzyrndm/Issue#282
Don't set comment size on explicit comment overload
2018-08-05 13:05:54 +12:00
Crzyrndm
ca8c93c696
Merge pull request #324 from Crzyrndm/iterator-default-ctors
Default ctors for iterators
2018-08-05 13:04:09 +12:00
Crzyrndm
dc7f369be9 Add relative urls to the valid hyperlink url set 2018-08-04 14:55:17 +12:00
Crzyrndm
c3296db932 Revert "Another easy 15-20% by not searching with no references"
This reverts commit 3ae31fadc3.
2018-07-30 07:22:45 +12:00
Crzyrndm
544e90c975 fix spectacular typo
- Using rgba for comparison is still faster, but it does help correctness when you compare two different instances
2018-07-30 07:07:32 +12:00
Crzyrndm
3ae31fadc3 Another easy 15-20% by not searching with no references 2018-07-29 23:28:02 +12:00
Crzyrndm
e6a84c0cf0 Optimise modifying a new format to reduce garbage collection runs 2018-07-29 22:10:56 +12:00
Crzyrndm
b4f695b3ea fixing warnings 2018-07-29 17:33:22 +12:00
Crzyrndm
5a5db1a50b use std::find and don't double iterate the list
- ~5% perf improvement in img2xlsx example
2018-07-29 16:48:18 +12:00
Crzyrndm
f64dbc00c4 string compare is slow, use rgba member instead 2018-07-29 16:24:09 +12:00
Crzyrndm
e01f461b64 get the initialisation order right
- members reordered to reduce sizeof classes (due to alignment). ctors needed to be updated for this
2018-07-29 14:37:08 +12:00
Crzyrndm
dd6f338419 Remove memory growth based on row count
- Nested unordered_map was the cause of a significant memory/cell spike.
- added cell_reference hash, lookup by cell_reference to make memory usage proportional to cell count only
2018-07-29 11:43:23 +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
d93e470a52 Suppress GCC maybe-uninitialized warning
Signal to noise ratio is very high, and the #pragma suppressions for optional aren't working for GCC8
2018-07-28 14:54:49 +12:00
Crzyrndm
ade8cf3b6c Ensure <color tint=...> is correctly serialised as an optional double 2018-07-28 14:44:49 +12:00
Crzyrndm
e1daff535c Better idea, set the defaults 2018-07-28 14:04:22 +12:00
Crzyrndm
d39b7a107a comment default size only set in the overloads which can't set size
- Debatable whether position should receive the same treatment
2018-07-28 13:55:56 +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
8f39375f4c revert unwise data structure change 2018-07-24 23:08:44 -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