Crzyrndm
1ab25fa7fc
Merge branch 'dev' into dev-Issue298
2018-07-13 11:21:13 +12:00
Crzyrndm
b95919323d
add more tests for worksheet iterator, add operator--
...
* operator-- completes the naive bidirectional iterator requirements
* tests for various construction and assignment behaviours
* tests for iteration and dereferencing behaviours
2018-07-10 12:40:56 +12:00
Crzyrndm
04b50d9b8e
worksheet_iterator - operator* const overloads
...
Users may still want to dereference a const iterator (note: not a const_iterator).
Also use the "reference" typedef to ensure there is only 1 source of information
2018-07-10 12:40:54 +12:00
Crzyrndm
a47985b2db
worksheet_iterator - rule of 5/0
...
For rule of 5/0, where no implementation is required, all 5 operations have been declared as defaulted. This is less likely to forget definitions for all 5 if required
- removed forwarding of copy ctor to assignment (which was defaulted already) in favour of defaulted copy ctor
- added defaulted move assignment/ctor and destructor
Changed workbook reference to a pointer to allow tests to compile (reference isn't rebindable so defaulted assignment is equivalent to deleted)
2018-07-10 12:40:52 +12:00
Crzyrndm
a8fa6637fe
fix workbook::operator== always returning false, add tests for workbook::load
...
workbook::operator== was comparing the value of the raw pointer held by two std::unique_ptr's. By definition, this is always false in a well behaved program (if it's true, things go bang...). This then led to adding equality operators to nearly every other struct/class in xlnt to support workbook::operator==
workbook::load and the non-default ctors for loading data from a file are tested using the now functional equality operator
NOTE: a large number of copy ctors need updates/fixing. Many should be defaulted
2018-07-03 14:05:07 +12:00
Crzyrndm
bb04205dac
workbook parameterised constructors
...
Issue #298
- all 4 are simply duplicating existing behaviour, but perhaps we can get a more optimal version in future
- istream ctor is intended as an extension point that can then be used to create free/static functions to work with any future data source (vector), while the path ctor is a convenience function for the common case (from file)
2018-07-02 21:33:27 +12:00
Thomas Fussell
e350a7734d
implement abspath and archid flags, fixes some serialization problems
2018-05-28 23:13:57 -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
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
vervbe
c05b9f33c1
Fix for issue #228 : Worksheet ID is not always unique
...
- Worksheet ID now generated from the maximum of existing IDs
- Worksheet ID no longer copied from existing sheet
- Added tests
2017-09-26 08:33:06 +02:00
Thomas Fussell
8801a0e352
figured out the problem
2017-07-30 20:32:37 -07:00
Thomas Fussell
eaaa310cef
start implementing xlsx2arrow params
2017-07-19 17:21:55 -07:00
Thomas Fussell
fee2319093
use static_cast instead of c-style cast for stream pointers
2017-07-11 20:40:55 -07:00
Thomas Fussell
f97ad6c1bd
start working on streaming write
2017-07-04 17:52:46 -07:00
Thomas Fussell
498f3a6f71
Merge branch 'master' into feature/arrow
2017-07-02 19:03:24 -07:00
Thomas Fussell
9f9dfe7a75
qualify use of extended_property enum class, fixes #186
2017-06-26 13:26:34 +00:00
Thomas Fussell
6f716c6e89
work on streaming cell reading, using ugly copy-pasted code for now [ci
...
skip]
2017-06-24 11:39:48 -04:00
Thomas Fussell
72b8bd6b67
work out how to handle worksheet rels during streaming parsing
2017-06-21 09:17:06 -04:00
Thomas Fussell
a9fd6b064e
minor fixes to get it to compile. lots of failing tests for now...
2017-06-20 13:29:50 -04:00
Thomas Fussell
d7e7526beb
add failing tests and begin restructuring worksheet reading [ci skip]
2017-06-17 10:53:37 -04:00
Thomas Fussell
342184139f
intermediate commit
2017-06-15 18:10:27 -04:00
Thomas Fussell
9d312ee7f4
make the code compile
2017-06-14 15:43:25 -04:00
Thomas Fussell
b3c044948f
start architecting streaming read/write api
2017-06-12 10:34:35 -04:00
Thomas Fussell
d2be054b7c
optimize shared strings and handle formula strings correctly
2017-05-10 08:44:25 -04:00
Thomas Fussell
b2a5110939
organize detail files, start wiring up encryption logic
2017-04-20 14:03:03 -04:00
Thomas Fussell
835e36d6ae
initial commit withou cxxtest
2017-04-13 14:51:35 -04:00
Thomas Fussell
46df18c12b
improve unicode tests
2017-04-13 10:58:40 -04:00
Thomas Fussell
5b9304960c
accept utf8 passwords for decrypting workbooks, #144
2017-04-12 19:21:21 -04:00
Thomas Fussell
3e2a0fc15f
pare down ltc
2017-04-11 12:02:35 -04:00
Thomas Fussell
83cbc3f7eb
organize files
2017-04-11 11:26:57 -04:00
Thomas Fussell
c3d9b85530
document some style classes, start implementing builtin styles more correctly
2017-03-26 10:30:26 -04:00
Thomas Fussell
0d82aba640
improve 1d and 2d cell iteration for #135 , including making empty cell skipping optional
2017-03-23 20:05:25 -04:00
Thomas Fussell
c7f61e38c1
restore worksheet::cell(column_t, row_t) method ( #137 ) and move some single use classes/structs/enums into parent header
2017-03-22 21:44:59 -04:00
Thomas Fussell
3cfcc7246c
clean up travis adding a build matrix
2017-03-22 21:41:00 -04:00
Thomas Fussell
3feee30eac
remove of the cell value xlsx producer tests
2017-03-21 19:31:23 -04:00
Thomas Fussell
d8c9d14a98
clean up worksheet api
2017-03-20 20:17:09 -04:00
Thomas Fussell
cf7f4e6c83
clean up switches, closes #133
2017-03-20 19:22:46 -04:00
Thomas Fussell
9cdf31065c
improve third-party lib handling for vcpkg
2017-02-28 00:00:25 -05:00
Thomas Fussell
d7b0e252fd
write missing property attribute for dcterms:created and dcterms:modified, update headingpairs and titlesofparts when sheet titles change
2017-02-27 07:47:33 -05:00
Thomas Fussell
0db50a7b15
improve property handling, comment serialization
2017-02-25 08:55:11 -06:00
Thomas Fussell
767d498dac
separate crypto_helper into header file, fix lots of stuff
2017-02-17 23:11:06 -06:00
sukoi26
b0664ded17
update check extension with xlnt function
2017-02-09 13:33:23 +01:00
sukoi26
4678048c21
check file extension workbook .xlsx
2017-02-07 22:49:02 +01:00
Thomas Fussell
82d5f623de
document some things
2017-01-26 19:57:19 -05:00
Thomas Fussell
7a18c816b6
re-enable round-trip tests, continue condensing test files
2017-01-22 14:54:07 -05:00
Thomas Fussell
0c100e166a
fix up comments, hyperlinks, and formulae consumption tests
2017-01-21 19:12:26 -05:00
Thomas Fussell
e4ec1a2850
use system packages for zlib, cryptopp, and cxxtest. WIP [ci skip]
2017-01-21 10:12:08 -05:00