Commit Graph

248 Commits

Author SHA1 Message Date
Thomas Fussell
eafad0ad49 use scoped_enum_hash in xlsx_producer too 2016-12-14 11:39:59 +01:00
Thomas Fussell
d9404888a9 don't used empty braced initializer for z_stream_s to avoid gcc warning, it should be fine uninitialized [ci skip] 2016-12-14 11:39:38 +01:00
Thomas Fussell
e250174d1f define hash struct for scoped enum for header_footer's unordered_map 2016-12-14 11:25:18 +01:00
Thomas Fussell
677c55156c centralize default case handling into its own header and apply it in number_formatter to fix warning 2016-12-14 07:58:15 +00:00
Thomas Fussell
db940fedc5 remove unused variable in pole 2016-12-14 07:56:51 +00:00
Thomas Fussell
2a6f2d6e2e handle xml:space, closes #95 2016-12-14 07:23:49 +00:00
Thomas Fussell
8dc374a1bb fix aes decryption 2016-12-13 23:48:02 +00:00
Thomas Fussell
b9a02916cf change from botan to cryptopp 2016-12-13 22:48:38 +00:00
Thomas Fussell
e0ce0fb279 get workbook.xml up to spec, closes #92 2016-12-10 19:46:21 +00:00
Thomas Fussell
beca771ef2 ensure all unused formula attributes are skipped for #88 2016-12-10 19:07:07 +00:00
Thomas Fussell
a8eadc1df5 skip hyperlink attributes for #88 2016-12-10 19:04:35 +00:00
Thomas Fussell
c8e7df6289 fix a few more warnings [ci skip] 2016-12-10 18:39:51 +00:00
Thomas Fussell
d0ef4333b4 get horizontal and vertical alignment up to spec, handle enum serialization more correctly for #90 2016-12-10 18:22:26 +00:00
Thomas Fussell
e1157625a5 begin refining headers and footers, remove dependency on pugixml 2016-12-10 00:18:50 +00:00
Thomas Fussell
860ad43506 clang format headers 2016-12-04 13:29:10 +01:00
Thomas Fussell
f33e887012 I really should set up a Linux VM one of these days 2016-12-03 21:39:03 +01:00
Thomas Fussell
07d31cdbb3 fix more types and turn on benchmarks build on appveyor and travis 2016-12-03 16:46:48 +01:00
Thomas Fussell
d1d96be48f elaborate type in stylesheet 2016-12-03 16:35:48 +01:00
Thomas Fussell
9514984d42 getting closer 2016-12-03 16:31:10 +01:00
Thomas Fussell
c55aac9ecf rename getters and setters to the property name, many breaking changes\! 2016-12-02 14:37:50 +01:00
Thomas Fussell
a1ff8c0ed2 parse relationship mode and implement reading hyperlinks, closes #87 2016-11-30 01:05:47 +01:00
Thomas Fussell
d9b1fef34f continue cleaning up xlsx_consumer 2016-11-30 00:31:06 +01:00
Thomas Fussell
85f62083c9 fix comment styles 2016-11-27 18:32:00 +01:00
Thomas Fussell
5d1d1d43bc use exact float comparison in number formatter for now 2016-11-27 17:06:00 +01:00
Thomas Fussell
fecd239fcf fix some clang warning errors 2016-11-27 16:56:38 +01:00
Thomas Fussell
d353bbf42c declare/define static const member correctly 2016-11-27 16:01:23 +01:00
Thomas Fussell
7ac3d8a612 fix out of bounds error in mwvc and gcc by creating a temporary vector during decryption 2016-11-27 15:47:12 +01:00
Thomas Fussell
49860895ce fix typename outside of template error in msvc 2016-11-27 15:44:41 +01:00
Thomas Fussell
1ff174a0c9 ignore optional formula attributes 2016-11-27 09:41:03 +01:00
Thomas Fussell
26b0302aac clean up comment parsing 2016-11-27 09:35:21 +01:00
Thomas Fussell
91ea4d81ad specify initializer list type (why is this needed?) 2016-11-25 13:47:49 +00:00
Thomas Fussell
2cc3f7947a clean up xml parsing, fix numbers xlsx decryption, unskip some tests 2016-11-25 13:13:55 +00:00
Thomas Fussell
6653568a1c ignore sortState element in worksheet for #84 2016-11-21 01:45:38 -05:00
Thomas Fussell
123d3df982 handle multiple consecutive character events arising from buffer boundaries, #83 2016-11-20 19:38:58 -05:00
Thomas Fussell
2bfd909684 skip codeName attribute for #83 2016-11-20 18:36:52 -05:00
Thomas Fussell
ec6a010f8a remove unused modules and update documentation 2016-11-20 11:06:52 -05:00
Thomas Fussell
455be8fb5f fix mingw build, closes #80 2016-11-19 19:41:21 -05:00
Thomas Fussell
daab3cf8ba reformat xlsx_consumer.cpp 2016-11-19 17:19:38 -05:00
Thomas Fussell
c89b36f749 add missing include for std::function 2016-11-19 17:03:10 -05:00
Thomas Fussell
dab1b0218d begin cleaning up xml handling in consumer 2016-11-19 16:42:16 -05:00
Thomas Fussell
8bd725f2fa ignore protectedRanges and make builtinId optional for styles, closes #82 2016-11-15 07:09:17 -06:00
Thomas Fussell
2618237678 fix #81 2016-11-14 20:14:42 -06:00
Thomas Fussell
b781aeb989 clean up comment reading and sketch out vml drawing reading 2016-11-13 11:52:39 -05:00
Thomas Fussell
cee933a1b8 finish implementing comment positioning, closes #68 2016-11-12 17:38:29 -05:00
Thomas Fussell
f90e35e007 optimize format garbage collection and apply style fills to formats correctly, fixes #79, fix cell iteration, closes #73, add third-party licenses to LICENSE.md, update README, fix all clang and msvc warnings 2016-11-09 19:52:18 -05:00
Thomas Fussell
75e0d9475b finish unicode filename implementation for #64, also fixes #78 2016-11-07 21:55:40 -05:00
Thomas Fussell
ca692790fa implement garbage collection to remove unreferenced formats and constituent parts 2016-11-07 21:11:30 -05:00
Thomas Fussell
1474c8ab82 begin trying to garbage collect cell formats 2016-11-03 19:26:11 -04:00
Thomas Fussell
f9e349ce8d Revert "working on styles, don't use yet"
This reverts commit 4e51e9e0e5.
2016-11-02 22:04:51 -04:00
Thomas Fussell
4e51e9e0e5 working on styles, don't use yet 2016-11-02 18:16:34 -04:00
Thomas Fussell
eeba8ffa86 copy previous formatting when changing the format of a cell, closes #76 2016-11-01 08:50:29 -04:00
Thomas Fussell
1b32f46639 move zip_file_header to header 2016-10-31 22:41:20 -04:00
Thomas Fussell
2e3d027604 fix vml 2016-10-31 22:35:42 -04:00
Thomas Fussell
98d506a5db skip unused gz sources in zlib, fix style equality operator exports 2016-10-31 21:53:22 -04:00
Thomas Fussell
d8169b82d1 use c linkage for zlib 2016-10-31 20:55:05 -04:00
Thomas Fussell
0d97105122 clean up zip.cpp, enable and fix compiler warnings, use equality instead of hashing for style components, compile all cpp files in sample directory, track remote branches for submodules 2016-10-31 20:48:43 -04:00
Thomas Fussell
dce2367524 fix clang build 2016-10-30 21:44:43 -04:00
Thomas Fussell
72c6569020 cast literal to streampos 2016-10-30 20:43:47 -04:00
Thomas Fussell
e9a398cc7a commit missing file 2016-10-30 20:28:40 -04:00
Thomas Fussell
5b4de6a150 use streams to access zip files and their contents instead of std::stringstream to reduce memory usage, replaces miniz with zlib, closes #66 2016-10-30 15:48:40 -04:00
Thomas Fussell
6d749aaa91 implement writing comments, still need to fix comment vml 2016-10-29 16:31:30 -04:00
Thomas Fussell
82311c96e4 implement reading of cell comments 2016-10-29 10:23:04 -04:00
Thomas Fussell
fbcf190ca2 Merge branch 'master' of http://github.com/tfussell/xlnt 2016-10-25 20:24:04 -04:00
Thomas Fussell
c49341c82f clean up cmake build, fix warnings, improve configuration, general
housekeeping, fixes #72, fixes #70
2016-10-25 20:22:22 -04:00
Thomas Fussell
b83cf64287 fix shared string enumeration for #72 2016-10-25 20:01:09 -04:00
Thomas Fussell
5479e572a4 fix windows build 2016-10-24 23:16:50 -04:00
Thomas Fussell
0359d1404c add pthread flag 2016-10-24 23:11:15 -04:00
Thomas Fussell
5c1cc5f3a7 call botan configure directly and elaborate hash_algorithm type 2016-10-24 22:42:23 -04:00
Thomas Fussell
9c8cba9f3f finally figured out how to decrypt with botan--swapping back out for botan 2016-10-24 22:09:15 -04:00
Thomas Fussell
aea237a632 implement ooxml decryption (standard and agile) 2016-10-23 22:40:05 -04:00
Thomas Fussell
17b934852c ignore row styles for now 2016-10-23 21:12:47 -04:00
Thomas Fussell
fe30096963 make xlsx_consumer more flexible to optional elements/attributes 2016-10-18 19:29:04 -04:00
Thomas Fussell
4d20ccaa67 fix some xlsx consumption and production 2016-10-13 20:11:02 -04:00
Thomas Fussell
cf019f6af6 move parser parameter into a field, document some methods 2016-10-11 23:16:14 -04:00
Thomas Fussell
a5d50b8ec6 commit in-progress work for reading/writing password protected workbooks, #69 (not working yet) 2016-10-10 07:28:49 -04:00
Thomas Fussell
dadf852752 getting too fancy with aliases 2016-09-21 19:13:22 -04:00
Thomas Fussell
c3993039bc unskip another round-trip test, making progress 2016-09-21 19:04:16 -04:00
Thomas Fussell
b5c46ede07 fix parameters with the same name as their type to fix gcc errors 2016-09-19 18:58:04 -04:00
Thomas Fussell
ef6b693ce1 finish translating xlsx_producer 2016-09-19 18:52:11 -04:00
Thomas Fussell
941bd2a672 translate theme to libstudxml, ugh... 2016-09-18 21:49:37 -04:00
Thomas Fussell
a81a0a6dde use value_traits for enum parsing/serialization and refactor xlsx_producer helper functions 2016-09-18 11:32:59 -04:00
Thomas Fussell
45f61ee644 begin translating xml parsing and serialization to libstudxml 2016-09-16 22:59:13 -04:00
Thomas Fussell
a03805acbf begin testing styles more extensively 2016-09-11 14:57:34 -04:00
Thomas Fussell
cb5a9d8802 continue fixing up border and fill round tripping 2016-09-10 10:05:06 -04:00
Thomas Fussell
ba2186ff7b uncomment/unskip some tests 2016-09-07 22:39:13 -04:00
Thomas Fussell
7310bb5590 fix writing frozen panes 2016-09-07 18:48:08 -04:00
Thomas Fussell
80ef8259c5 test_produce::test_produce_simple_excel() creates a file that opens in excel now 2016-09-07 18:02:46 -04:00
Thomas Fussell
fd1d73950d add missing include for std::floor 2016-09-05 20:30:25 -07:00
Thomas Fussell
3d21a83c93 make xml comparisons in xml helper content-type aware, fix excel style workbook generation 2016-09-05 19:17:36 -07:00
Thomas Fussell
300f694f04 missed some 2016-08-18 22:11:59 -04:00
Thomas Fussell
f9a45313a0 improve styles 2016-08-18 07:34:18 -04:00
Thomas Fussell
94881ce660 begin correctly implementing styles and formats 2016-08-16 00:23:49 -04:00
Thomas Fussell
a7067db2ba unskip a few more tests and fix xml helper node comparison 2016-08-13 19:44:45 -04:00
Thomas Fussell
b50bd4890f std::size_t overload is ambiguous so convert it to a string first for xml attribute value 2016-08-13 15:04:26 -04:00
Thomas Fussell
31911b1afc remove schemata, remove test xml data, implement minimal round-tripping 2016-08-13 14:45:26 -04:00
Thomas Fussell
4baeeb824f finish excel template, fix errors 2016-08-12 23:06:25 -04:00
Thomas Fussell
1b5bdbeb18 improve manifest interface, work on round-tripping 2016-08-12 00:22:14 -04:00
Thomas Fussell
2fff29ba86 fix non-windows build errors 2016-08-06 10:50:29 -04:00
Thomas Fussell
6c829a235a improve manifest, implement true thumbnail handling, being refactoring serialization tests 2016-08-06 10:40:17 -04:00
Thomas Fussell
cf80c46b66 a little refactoring 2016-08-05 01:52:05 -04:00