Commit Graph

993 Commits

Author SHA1 Message Date
Thomas Fussell
ca2abc9ddc
Merge branch 'master' into worksheet_empty 2021-01-02 15:07:08 -05:00
Thomas Fussell
c448d9788a
Merge branch 'master' into workbook_check_out_of_range_in_sheet_by_index 2021-01-02 15:06:21 -05:00
Thomas Fussell
4b91281280
Merge branch 'master' into issue-504-select-multiple-cells 2021-01-02 15:05:02 -05:00
Thomas Fussell
647b5c07cb
Merge branch 'master' into issue-504-select-multiple-cells 2021-01-02 15:03:24 -05:00
Thomas Fussell
90868bdb2a
Merge branch 'master' into issue-509-count-missing 2021-01-02 15:02:37 -05:00
Thomas Fussell
c31b2aa51d
Merge branch 'master' into issue-494-shared-string 2021-01-02 15:01:41 -05:00
Thomas Fussell
08e51ccdc0
Merge branch 'master' into feature/hidden-sheet 2021-01-02 14:58:47 -05:00
Thomas Fussell
f6e43a312d
Merge branch 'master' into feature/hidden-sheet 2021-01-02 14:57:12 -05:00
Thomas Fussell
dd215794db
Merge branch 'master' into issue_503_external_link 2021-01-02 14:54:31 -05:00
Thomas Fussell
4bd0f4df56
Merge pull request #501 from softmarch/issue-498-extlist
Fixed an exception that was thrown when the property's namespace is a web address.
2021-01-02 14:46:43 -05:00
Thomas Fussell
566d83d447
Merge branch 'master' into master 2021-01-02 14:41:10 -05:00
Thomas Fussell
3127e9c016
Merge branch 'master' into issue-492-stream-empty-row 2021-01-02 10:46:19 -05:00
Emmanuel Pescosta
3225f357dd
workbook: Throw if index in (const) sheet_by_index is out of range
The documentation of (const) sheet_by_index already mentions that
invalid_parameter exception will be thrown if the index is out of
range, but the implementation was missing.
2020-12-02 11:06:56 +01:00
Emmanuel Pescosta
9df7c83ca6
worksheet: Add method to check if the worksheet is empty
A worksheet is considered empty if it doesn't have any cells.
2020-12-02 10:59:29 +01:00
胡剑波
e9a9946856 Fixed multiple cell throw exception. 2020-08-25 19:57:07 +08:00
胡剑波
dc9f550429 Fix the missing count of fonts and throw an exception. 2020-08-25 16:40:33 +08:00
胡剑波
e8dd38d0d6 Fix throwing exception when duplicate shared strings occur. 2020-08-25 15:08:20 +08:00
胡剑波
dafdfa3ebb Add the function of getting table hidden attributes. 2020-08-25 13:32:21 +08:00
胡剑波
0ecad78c1d Fixed an exception thrown when parsing external links. 2020-08-25 09:00:22 +08:00
胡剑波
4da7183b1c Fixed an exception that was thrown when the namespace in the external link is a web address. 2020-08-12 16:36:30 +08:00
Adam Hooper
319c4197c1
Streaming: skip empty rows in has_cell()/read_cell()
Previously, an empty row would mess with the parser: if we're in an
empty row, our helper methods don't detect us as being in the "row" _or_
in the "sheetData". So `has_cell()` would return false when it
shouldn't. Similarly, `read_cell()` wouldn't skip rows; so `read_cell()`
would return an invalid cell when placed in an empty row, causing a
segfault when the caller tried to use the cell.

Callers must take care to call `has_next()` before `read_next()`. In
the future, perhaps we can make `read_next()` return a `std::optional`
and nix `has_next()` altogether?

[Closes #492]
2020-07-28 15:29:12 -04:00
Stefan Rommel
cdb50bbd6b
Fix XLNT_INCLUDE_INSTALL_DIR
Otherwise, XLNT_INCLUDE_INSTALL_DIR is not set correctly and find_package(Xlnt) results to an error:
 ```
CMake Error at /usr/lib64/cmake/xlnt/XlntConfig.cmake:23 (message):
  File or directory include referenced by variable XLNT_INCLUDE_DIR does not
  exist !
Call Stack (most recent call first):
  /usr/lib64/cmake/xlnt/XlntConfig.cmake:41 (set_and_check)
  CMakeLists.txt:4 (find_package)
```
The content of the line 41 of /usr/lib64/cmake/xlnt/XlntConfig.cmake is: `set_and_check(XLNT_INCLUDE_DIR "include")`. 

I'm using the Arch Linux user repository package https://aur.archlinux.org/packages/xlnt/.
The used build manual is described here: https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=xlnt.
2020-07-16 21:29:06 +02:00
JCrawfy
06801f7d36 derp, need typename too 2020-04-26 15:54:49 +12:00
JCrawfy
6c5a5a5dae and same issue with is_convertible 2020-04-26 15:49:05 +12:00
JCrawfy
f1042c5119 enable_if_t isn't a thing in C++11 2020-04-26 15:47:53 +12:00
JCrawfy
504fed3585 another missing header 2020-04-26 15:40:56 +12:00
JCrawfy
556d3358e9 fix bad commit 2020-04-26 14:53:15 +12:00
JCrawfy
d30e705f83 fix most (all?) the places where string<->double conversions are performed
strod / stod / to_string and all related friends are dependant on current locale for how they format a number
2020-04-25 14:00:58 +12:00
JCrawfy
dfb8f1518e Revert "redo serialisation by using a sorted vector instead of a lookup for each possible row/column combination"
This reverts commit 63484f8b8f.
2020-04-25 11:15:23 +12:00
JCrawfy
63484f8b8f redo serialisation by using a sorted vector instead of a lookup for each possible row/column combination
Not tested, definitely not as correct as previous implementation
2020-04-25 11:00:39 +12:00
JCrawfy
9136d21845 move the simplified cell_reference and cell structs out to a header
the standard xlnt::cell and xlnt::cell_reference have plenty of extra functionality that just slows things down during (de)serialisation
These intermediate structs can be used to minimise overhead before transforming to the final type
2020-04-25 11:00:39 +12:00
JCrawfy
1069c17fbe fixup comment in parser 2020-04-25 11:00:39 +12:00
JCrawfy
e8e29e9c18 resolve some warnings (unintialised variables), remove warning suppression 2020-04-25 11:00:39 +12:00
Thomas Fussell
568ac85346
release v1.5.0 2020-03-21 15:19:37 -04:00
Thomas Fussell
05fb0ceaf6
revert version bump 2020-03-21 15:18:59 -04:00
Thomas Fussell
b118d8f1f2
bump version to 1.5.0 2020-03-21 15:13:22 -04:00
Thomas Fussell
5602edbd2d
add packaging and release deployment workflow 2020-03-21 14:25:39 -04:00
Thomas Fussell
2f5934f60e
Merge pull request #447 from Crzyrndm/feature/benchmark
microbenchmarks for double<->string conversion, serialisation improvements
2020-03-20 18:02:37 -04:00
amiremohamadi
3af9567946 fix-bug: set absolute flags correctly 2020-03-20 23:08:27 +03:30
JCrawfy
f4d00acb9f resolve warnings 2020-03-02 13:32:39 +13:00
JCrawfy
0ea054026f speedup worksheet::calculate dimension by only looping the cell map once 2020-03-01 23:20:44 +13:00
JCrawfy
c418c13010 remove a double lookup in the cell map during serialisation 2020-03-01 23:18:13 +13:00
JCrawfy
932fc4596f remove declarations of copy/assignment operators that only do default work
user defined copy operators suppress compiler creation of move operations, and not having all of copy/move/dtor
defined (rule of 0/5) is suspicious. Also happens to be very slightly slower
2020-03-01 23:16:57 +13:00
JCrawfy
39f498f401 use the new faster serialisation everywhere in xlsx_producer 2020-03-01 22:01:53 +13:00
JCrawfy
0915fde090 add saving to the spreadsheet-load test, fix a bug in the serialiser 2020-03-01 20:43:56 +13:00
Adam Hooper
ac18fc6dde Parse inlineStr values
inlineStr XML structure is <c><is><t>. This was being parsed incorrectly
when streaming (because has_value wasn't being set to true) and when
reading the whole file (because the <t> was ignored).

[closes #445]
2020-02-25 14:32:14 -05:00
Thomas Fussell
e8ee585897
bump copyright year to 2020 2020-02-08 12:12:59 -05:00
Thomas Fussell
5a2498c229
fix windows build 2020-02-08 12:09:22 -05:00
Thomas Fussell
53b2853ae3
Merge branch 'master' into format 2020-02-08 12:03:40 -05:00
Thomas Fussell
85e6878cc4
bump version to 1.4 to match latest release, for #334 2020-02-08 11:48:50 -05:00