Commit Graph

831 Commits

Author SHA1 Message Date
Thomas Fussell
a2bfdee2f2 intermediate commit 2017-01-21 09:04:10 -05:00
Thomas Fussell
72470c6371 hardcode enum serialization/deserialization, improve metadata property comsumption 2017-01-16 13:05:19 -05:00
Thomas Fussell
571c0103b5 continue work on workbook metadata properties 2017-01-15 19:08:57 -05:00
Thomas Fussell
f18e9dbc09 begin work on handling properties correctly 2017-01-14 14:09:01 -05:00
Thomas Fussell
753597510d Merge branch 'master' of https://github.com/sukoi26/xlnt into sukoi26-master 2017-01-10 20:28:06 -05:00
Thomas Fussell
2991872778 clean up namespace handling in consumer and producer, improve stylesheet consumption 2017-01-10 20:25:59 -05:00
Thomas Fussell
3acd06b857 get relationship strings up to spec, closes #106 2017-01-10 20:25:11 -05:00
Thomas Fussell
bef9effa12 shift relationship ids down by one after deleting one to maintain contiguity, fixes #104 2017-01-10 22:14:33 +01:00
Thomas Fussell
a66c0d1f3e remove two more linux-specific overloads and fix the call that was requiring them 2017-01-10 22:14:33 +01:00
Thomas Fussell
7100b64e45 remove long long overloads for cell::value, let's see if this breaks anything 2017-01-10 22:14:33 +01:00
Thomas Fussell
90c7e929a9 clean up test xml_helper, rename zip to zstream 2017-01-10 22:14:33 +01:00
Thomas Fussell
44b11d342c shift relationship ids down by one after deleting one to maintain contiguity, fixes #104 2017-01-08 14:12:55 -05:00
Thomas Fussell
e9c8116b0d remove two more linux-specific overloads and fix the call that was requiring them 2017-01-05 08:09:08 -05:00
Thomas Fussell
a0dea36605 remove long long overloads for cell::value, let's see if this breaks anything 2017-01-04 21:15:29 -05:00
Thomas Fussell
cc1a5e15f6 clean up test xml_helper, rename zip to zstream 2017-01-04 19:02:31 -05:00
sukoi26
32d3e7a61c Update xlsx_consumer.cpp 2017-01-04 18:53:45 +01:00
Thomas Fussell
45428c7f2b update copyright dates for 2017 2017-01-02 20:35:18 -05:00
Thomas Fussell
c43561b4bd remove calcChain when no formulae remain in any cell, correct calcChain relationship type string, closes #98 2017-01-02 19:13:38 -05:00
Thomas Fussell
34304fd9c7 define worksheet::add_row_properties, closes #97 2017-01-02 18:36:33 -05:00
Thomas Fussell
186ec184e2 Merge branch 'master' of github.com:tfussell/xlnt 2017-01-02 18:32:17 -05:00
Thomas Fussell
e4d18b5603 skip optional protection attributes if they're not present, closes #93 2017-01-02 18:32:10 -05:00
Thomas Fussell
ffdf570907 remove incorrect link on static build 2017-01-02 18:19:24 -05:00
Thomas Fussell
8362913aa6 export workbook properties template specializations correctly 2017-01-02 18:09:51 -05:00
Thomas Fussell
afbab819c4 implement consumption of vt:lpwstr custom properties 2017-01-02 17:42:16 -05:00
Thomas Fussell
42c9233ad9 compile and link third-party amalgamation as a static lib instead of object files and fix clang warnings in cryptopp 2017-01-02 17:41:39 -05:00
Thomas Fussell
38cb446e3e remove cryptopp-object from static xlnt 2017-01-02 12:03:22 -05:00
Thomas Fussell
ccd2a0eb1e finally figure out how to build cryptopp directly rather than as an external project, time to test on other platforms 2017-01-02 10:47:54 -05:00
Thomas Fussell
ab1af4f73e apparently evaluation order is unspecified for assignment causing an off-by-one in gcc 2017-01-01 18:16:38 -05:00
Thomas Fussell
cdb97fda82 try that again 2017-01-01 09:12:01 -05:00
Thomas Fussell
7a7d44b693 use make_pair instead of braced initializer in rich_text constructor 2016-12-31 20:15:44 -05:00
Thomas Fussell
760f95e2df clean up cell deserialization for #103 2016-12-31 20:05:10 -05:00
Thomas Fussell
7de0b05480 fix zip header error when unzipping for #103 2016-12-31 19:15:09 -05:00
Thomas Fussell
398bf7a3bb remove potentially problematic methods on optional, fix windows build 2016-12-29 19:00:27 -05:00
Thomas Fussell
66b5187e73 stop trying to produce non-excel style xlsx files 2016-12-29 18:36:29 -05:00
Thomas Fussell
c637f412b6 continue working through xml problems as a result of fixing xml comparison 2016-12-26 09:38:26 -05:00
Thomas Fussell
c8f2ca204b clang-format all source files, fix broken test helpers--lots of cleanup necessary as a result [ci skip] 2016-12-24 10:04:57 -05:00
Thomas Fussell
6c32563d18 rename formatted_text to rich_text to match the spec, also text_run to rich_text_run 2016-12-23 06:52:02 -05:00
Thomas Fussell
244314d426 rename formatted_text to rich_text to match the spec, also text_run to rich_text_run 2016-12-23 06:51:30 -05:00
Thomas Fussell
008461bf60 finish full header/footer implementation, add support for page breaks, clean up row/column properties interface 2016-12-22 18:57:22 -05:00
Thomas Fussell
cd7c11a4ea Merge branch 'master' of github.com:tfussell/xlnt 2016-12-17 00:19:30 +01:00
Thomas Fussell
8427db5d46 fix cmake configuration for xcode generator 2016-12-17 00:18:28 +01:00
Thomas Fussell
886605d643 fix msvc build with some defines 2016-12-15 08:27:16 +01:00
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
414fe5da39 suppress dev warnings in cryptopp cmake, locate python more flexibly using find_package 2016-12-14 08:27:09 +00: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
4dc9f7dfa6 now we're getting somewhere 2016-12-03 21:35:09 +01:00
Thomas Fussell
30776eb77c let's just get rid of the method 2016-12-03 21:31:48 +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
2fe649146b fix msvc warning which also indicated a bug 2016-12-03 12:07:05 +01:00
Thomas Fussell
eff00f9540 specify enum class type differently for msvc build 2016-12-03 10:46:11 +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
7694c66f08 I give up for now 2016-11-27 19:12:38 +01:00
Thomas Fussell
7162f265c1 debug gcc exception 2016-11-27 18:47:37 +01:00
Thomas Fussell
ec42f3c3ac debug gcc exception 2016-11-27 18:41:46 +01:00
Thomas Fussell
85f62083c9 fix comment styles 2016-11-27 18:32:00 +01:00
Thomas Fussell
03762be3a1 debug gcc exception 2016-11-27 18:11:32 +01:00
Thomas Fussell
267bd4b096 debug gcc exception 2016-11-27 18:02:19 +01:00
Thomas Fussell
585a0b528f debug gcc exception 2016-11-27 17:58:12 +01:00
Thomas Fussell
b5693d49e6 debug gcc exception 2016-11-27 17:37:12 +01:00
Thomas Fussell
cdc6c2d4cf debug gcc exception 2016-11-27 17:32:20 +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
340a4b3195 add placeholder api comments for #28 2016-11-20 01:01:32 -05:00
Thomas Fussell
846ea8e0d6 add overload to worksheet::get_cell which accepts a column and row 2016-11-19 23:44:28 -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
d393343c2e reformat cell.cpp 2016-11-19 16:50:35 -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
b06f3901f6 add missing include for std::fabs 2016-11-09 20:20:12 -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
24d074d6a7 only include codecvt on windows since gcc 4 doesn't ship with it 2016-11-07 22:12:08 -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
f2f5097164 fix coveralls call and ignore unknown pragmas 2016-10-31 23:30:21 -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
862e6778e5 remove unused files 2016-10-31 20:49:38 -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
25aea3fe72 disable wstring test on non-windows 2016-10-30 21:18:36 -04:00
Thomas Fussell
012dd0984e initial implementation of wstring filenames 2016-10-30 21:17:51 -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
85ffb2029c set fill background to indexed_color(64) when the foreground is set 2016-10-29 12:41:55 -04:00
Thomas Fussell
0f7dc72070 create a static method in xlnt::fill to create a solid fill with a particular color to be the cell's background color 2016-10-29 12:17:22 -04:00
Thomas Fussell
5af753c443 fix windows and gcc build 2016-10-29 10:36:46 -04:00
Thomas Fussell
82311c96e4 implement reading of cell comments 2016-10-29 10:23:04 -04:00
Thomas Fussell
757e5e7034 fix appveyor build, I hope 2016-10-28 19:54:37 +08:00
Thomas Fussell
3c7c40cdfa make build system modular 2016-10-27 18:40:20 -04:00
Thomas Fussell
f0f0607638 revert to old cmake output directory method, fix travis build 2016-10-25 21:12:57 -04:00
Thomas Fussell
eae2dc1f3f fix appveyor build 2016-10-25 20:53:11 -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
bc24515104 Merge branch 'master' of http://github.com/tfussell/xlnt 2016-10-23 22:40:52 -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
b56b4db9ae unskip test 2016-10-23 20:00:22 -04:00
Thomas Fussell
0a80c302b3 fix sheet deletion, #71 2016-10-22 13:53:44 -04:00
Thomas Fussell
fe30096963 make xlsx_consumer more flexible to optional elements/attributes 2016-10-18 19:29:04 -04:00
Thomas Fussell
ac3fd6904b use correct password in crypto test 2016-10-18 19:28: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
eee47c267c fix bug in worksheet::set_title 2016-10-10 07:01:19 -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
3f0a3424e6 minor fixes 2016-08-18 21:57:26 -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
6acba8ee9c remove default field from margins and fix ref to non-const 2016-08-13 15:12:00 -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
29ef278779 fix linux build 2016-08-12 23:26:57 -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
ed591e1559 fix more build errors 2016-08-10 00:58:38 -10: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
Thomas Fussell
53e1757c2e fix passing non-const ref to temporary 2016-08-03 08:46:50 -04:00
Thomas Fussell
116e53fb0c remove shlwapi functions and use stat instead 2016-08-03 08:00:16 -04:00
Thomas Fussell
f679f8a8d1 remove document_properties and app_properties includes 2016-08-03 07:45:09 -04:00
Thomas Fussell
d15ef0f6bf remove unused zip_file function and delete removed source file packaging/document_properties 2016-08-03 07:41:42 -04:00
Thomas Fussell
ccc3995709 start correctly implementing opc 2016-08-03 00:12:18 -04:00
Thomas Fussell
f21d4c922c initialize tint, probably fixes the intermitten error 2016-08-02 00:34:07 -04:00
Thomas Fussell
ff401a0843 add temporary output for debugging 2016-08-02 00:20:29 -04:00
Thomas Fussell
0da0299328 remove extraneous source file 2016-08-01 18:51:11 -04:00
Thomas Fussell
69bd89da63 specialize std::hash for border::side and get rid of border::default 2016-08-01 18:47:17 -04:00
Thomas Fussell
4234a62b8b clean up api and do more testing 2016-08-01 18:33:43 -04:00
Thomas Fussell
e8972ec423 fix infinite loop 2016-07-30 18:35:57 -04:00
Thomas Fussell
cd3c0c5f0b test number_formatter and improve exceptions 2016-07-30 11:58:36 -04:00
Thomas Fussell
5bd1a79536 refactor custom exceptions 2016-07-29 18:55:49 -04:00
Thomas Fussell
d39f5b2299 improve manifest 2016-07-29 17:50:33 -04:00
Thomas Fussell
6707736fa8 don't use worksheet id as the sheet index since it is an arbitrary value 2016-07-26 21:57:35 -04:00
Thomas Fussell
3a9fda8bfe improve relationships<=>worksheets handling, fixes #59 2016-07-26 20:13:09 -04:00
Adam Nielsen
22be565b92 Add new test to confirm read then write doesn't change worksheet order 2016-07-25 11:38:15 +10:00
Thomas Fussell
9a6bcdfc54 fix range iterator tests 2016-07-23 21:24:25 -04:00
Thomas Fussell
8ef1fe1a28 test and implement reading gradient fill 2016-07-23 20:41:55 -04:00
Thomas Fussell
51db47e2a8 test workbook and fix mising template specialization 2016-07-23 19:43:24 -04:00
Thomas Fussell
dfaec919ff test cell 2016-07-23 19:15:17 -04:00
Thomas Fussell
75dc7ebf26 get get_point_pos 2016-07-22 23:50:27 -04:00
Thomas Fussell
5cdaa6ec6b remove cell_reference comparisons 2016-07-22 23:41:57 -04:00
Thomas Fussell
d1d9471e15 test opening bad files 2016-07-22 23:21:53 -04:00
Thomas Fussell
b10b2a2bd3 test manifest 2016-07-22 22:48:50 -04:00
Thomas Fussell
c1364199ee improve manifest 2016-07-22 22:24:45 -04:00
Thomas Fussell
d3486bb986 improve constants 2016-07-22 20:26:02 -04:00
Thomas Fussell
f3caa31ccc remove include 2016-07-21 23:32:05 -04:00
Thomas Fussell
c009278c60 clean up exceptions 2016-07-21 23:04:36 -04:00
Thomas Fussell
1859761775 improve workbook interface 2016-07-21 22:14:00 -04:00
Thomas Fussell
ce0ae608ee test inlinestr 2016-07-21 20:44:00 -04:00
Thomas Fussell
ffeb1b1046 remove unneeded number formats and finish testing number format 2016-07-21 20:15:53 -04:00
Thomas Fussell
007619fb79 test range reference 2016-07-21 19:50:49 -04:00
Thomas Fussell
3dda90fa8d squeeze in some const_range_iterator coverage 2016-07-21 19:44:00 -04:00
Thomas Fussell
3fe69dd922 copy reference... 2016-07-21 19:39:07 -04:00
Thomas Fussell
9410b9fde3 test write page setup 2016-07-21 19:29:35 -04:00
Thomas Fussell
539b0f778e easy test 2016-07-20 20:10:19 -04:00
Thomas Fussell
6a4690d109 add exports for testing detail in windows dll 2016-07-20 19:58:09 -04:00
Thomas Fussell
894c46c920 finish renaming test helpers and fix windows errors 2016-07-20 19:54:24 -04:00
Thomas Fussell
0c9bde91b7 fix windows warnings 2016-07-20 19:47:47 -04:00
Thomas Fussell
e222e1b268 fix warnings 2016-07-20 19:16:51 -04:00
Thomas Fussell
dec6aaa49a test some stuff, rename some other stuff 2016-07-20 19:04:44 -04:00
Thomas Fussell
faccef71d7 test zip_file 2016-07-19 23:39:08 -04:00
Thomas Fussell
ef2b8de33d fix windows bug 2016-07-20 10:28:12 +08:00
Thomas Fussell
0b62d1e1d6 call static methods statically 2016-07-19 21:23:11 -04:00
Thomas Fussell
7b558c6857 fix windows includes 2016-07-19 21:19:34 -04:00
Thomas Fussell
a99feb4e57 test and fix zip_file::extract 2016-07-19 21:17:31 -04:00
Thomas Fussell
336014aca8 test reading styled text 2016-07-19 20:36:12 -04:00
Thomas Fussell
4b34273f1b test writing styled text 2016-07-19 20:27:14 -04:00
Thomas Fussell
d29a5f0245 test cell reference 2016-07-18 21:38:16 -04:00
Thomas Fussell
39369220f7 test cell comment 2016-07-18 21:26:14 -04:00
Thomas Fussell
36b676048f fix bug 2016-07-18 03:20:20 +08:00
Thomas Fussell
026058d111 test workbook some 2016-07-17 14:59:11 -04:00
Thomas Fussell
101ba5e49f remove some unneccessary encoding stuff 2016-07-17 13:49:59 -04:00
Thomas Fussell
93a5bccac2 test test test 2016-07-16 20:06:39 -04:00
Thomas Fussell
0502e1e2d4 test test test 2016-07-16 19:40:20 -04:00
Thomas Fussell
f614c737f5 test text 2016-07-16 18:42:56 -04:00
Thomas Fussell
f406f657c4 test some skipped branches 2016-07-16 15:57:50 -04:00
Thomas Fussell
25b995bc78 improve fill and style serialization test coverage 2016-07-14 22:09:57 -04:00
Thomas Fussell
64c95aa7c5 fix #58 2016-07-14 22:05:39 -04:00
Thomas Fussell
959d246995 start testing writing styles 2016-07-13 23:12:49 -04:00
Thomas Fussell
8e17339ef0 fix out of bounds error detected in msvc 2016-07-14 07:20:31 +08:00
Thomas Fussell
053508e8b7 test some number formatting edge cases 2016-07-11 18:10:57 -04:00
Thomas Fussell
8970bfaffb improve style writing coverage. i think that's enough for today 2016-07-09 15:12:53 -04:00
Thomas Fussell
24ac76ccd4 try exclude again 2016-07-09 14:38:47 -04:00
Thomas Fussell
24b966cf86 export column_t friend functions, attempt to exclude test headers from coveralls 2016-07-09 14:21:10 -04:00
Thomas Fussell
f70e4db1e1 cover column_t 2016-07-09 10:59:27 -04:00
Thomas Fussell
29b594940f cover time 2016-07-09 10:37:12 -04:00
Thomas Fussell
2e035bba62 cover const_worksheet_iterator 2016-07-09 10:20:08 -04:00
Thomas Fussell
60372fb145 cover alignment.cpp 2016-07-09 10:13:56 -04:00
Thomas Fussell
874ea7abeb cover worksheet_iterator.hpp 2016-07-09 10:02:58 -04:00
Thomas Fussell
a2814d3465 cover header_footer.hpp 2016-07-09 00:22:08 -04:00
Thomas Fussell
5147a282af implement fractional number format, continue implementing tests for builtin formats 2016-07-08 19:39:28 -04:00
Thomas Fussell
a1688c7e48 add size check to removal of trailing zeros in number formats 2016-07-06 18:50:30 +08:00
Thomas Fussell
9f1ac60d20 start implementing complex number formats, test builtin formats 2016-07-05 21:27:35 -04:00
Thomas Fussell
0ee716f94f Merge pull request #54 from xpol/fixes-test-warnings
Fixes warnings about compare double to bool.
2016-07-04 12:17:31 -04:00
Thomas Fussell
47f74fd4c1 fix some windows build problems and warnings 2016-07-05 00:09:51 +08:00
Thomas Fussell
9ae506c1ea move serialization classes to detail, recouple with pugixml (no reason to abstract) 2016-07-03 19:22:08 -04:00
Thomas Fussell
d8b9a71c59 fix std::abs call 2016-07-03 11:41:59 -04:00
Thomas Fussell
54c08246ce improve names to fix errors 2016-07-03 11:34:44 -04:00
Thomas Fussell
d92ad1ab9c finally implement a real number format parser. that was rough... 2016-07-03 11:22:53 -04:00
Xpol Wan
933beab976 Fixes warnings about compare double to bool. 2016-06-29 17:23:43 +08:00
Thomas Fussell
bdc770d23a improve number_format test coverage 2016-06-24 10:43:51 +01:00
Thomas Fussell
aa0dee3191 add more tests for complex number formats 2016-06-23 10:34:20 +01:00
Thomas Fussell
c7bc216026 improve worksheet test coverage 2016-06-23 09:33:10 +01:00
Thomas Fussell
4dae9438fb add utf8 bom to test_number_format because of euro symbol 2016-06-19 22:43:17 +01:00
Thomas Fussell
b4a7b1c849 fix typo 2016-06-19 22:23:32 +01:00
Thomas Fussell
112aa14e1a test number format locale currency symbol 2016-06-19 22:20:49 +01:00
Thomas Fussell
e26c5595d1 cover missed lines in fill.cpp 2016-06-19 21:58:55 +01:00
Thomas Fussell
523fe10898 test other condition types 2016-06-19 21:50:41 +01:00
Thomas Fussell
7b6b5517d9 finish testing fill 2016-06-19 21:30:15 +01:00
Thomas Fussell
f28e09d9a3 finish testing page setup 2016-06-19 21:16:05 +01:00
Thomas Fussell
2732cd6479 finish testing color 2016-06-19 21:06:12 +01:00
Thomas Fussell
ccb8e66879 remove test for unsigned long long for now 2016-06-19 19:49:41 +01:00
Thomas Fussell
27cb3a089d work on cell.cpp test coverage 2016-06-19 19:43:41 +01:00
Thomas Fussell
d194fe9640 oops, my python is leaking 2016-06-18 23:13:52 +01:00
Thomas Fussell
03080dbe1f test conditional formats 2016-06-18 23:07:22 +01:00
Thomas Fussell
d8eda2aeb4 test text section of custom number format 2016-06-18 10:06:02 +01:00
Thomas Fussell
0cd96b0494 begin creating number_format tests 2016-06-18 09:32:09 +01:00
Thomas Fussell
bc410d8835 uncomment test_reverse_column_major_iterators 2016-06-15 13:36:03 +01:00
Thomas Fussell
fbbd984779 Merge pull request #51 from xpol/refactor-index-types
Refactor index types
2016-06-15 08:23:35 -04:00
Thomas Fussell
5d2c75014b improve range iterators and their tests 2016-06-15 12:45:05 +01:00
Xpol Wan
eead279c58 compound assignments should implement the operation themself.
rather than depends on binary arithmetic operators, instead, binary arithmetic operators should reuse compound assignments.
2016-06-14 17:46:24 +08:00
Xpol Wan
da59c4a121 Remove doc comments in index_types.cpp.
They are duplicated with comments in index_types.hpp.
2016-06-14 17:24:24 +08:00
Xpol Wan
211cd7a363 make binary arithmetic operators for column_t non-member. 2016-06-14 17:20:49 +08:00
Thomas Fussell
23f65602de revert coverage calculation and work on coverage 2016-06-13 23:36:26 -04:00
Thomas Fussell
0efd097617 add hash for enum class for gcc 2016-06-12 20:15:00 -04:00
Thomas Fussell
3d29186d6a improve enum serialization, closes #50 2016-06-12 19:59:59 -04:00
Thomas Fussell
8361bcad74 clean up xlnt_config.hpp and fix visual studio warnings 2016-06-12 01:07:07 +08:00
Thomas Fussell
d9124a2b23 add missing header 2016-06-11 10:17:58 -04:00
Thomas Fussell
6b56a75c9c add missing header 2016-06-11 10:09:29 -04:00
Thomas Fussell
2d28cd93e5 add missing header 2016-06-11 10:03:58 -04:00
Thomas Fussell
8c7a7f7a6f Merge branch 'master' of github.com:tfussell/xlnt 2016-06-11 01:12:30 -04:00
Thomas Fussell
85e1b4a333 refactor styles... again 2016-06-10 13:40:50 -04:00
Thomas Fussell
30275476c1 Merge pull request #48 from xpol/add-missing-member-for-workbook
Add implement const version of workbook::get_sheet_by_name().
2016-06-04 08:53:34 -06:00
Xpol Wan
9f1edce3bc Add range worksheet::rows(int row_offset, int column_offset) const. 2016-05-26 10:55:50 +08:00
Xpol Wan
aaabfe546a Add tests for const version of get_sheet_by_name(). 2016-05-26 10:44:35 +08:00
Xpol Wan
ba2d4743a6 Add implement const version of workbook::get_sheet_by_name().
and non const version are based on const version.
2016-05-26 10:05:30 +08:00
Thomas Fussell
3a589fe8ef define some built-in rgb colors, missing fill method 2016-05-16 19:31:44 -04:00
Thomas Fussell
b8e7931b10 remove accidental commit of temporary test 2016-05-15 15:06:55 -04:00
Thomas Fussell
135af6e6c9 fix styles -- Excel wanted to repair saved workbooks 2016-05-15 15:03:02 -04:00
Thomas Fussell
365e2f93fc fix round-tripping of text runs with formatting 2016-05-15 11:51:32 -04:00
Thomas Fussell
760d044f7d add utf8 bom to number_format source to resolve encoding issues in VS2015, closes 43 2016-05-15 10:24:34 -04:00
Thomas Fussell
3d4941e61d wire up text and text run serialization 2016-05-14 15:19:08 -04:00
Thomas Fussell
74cc503215 clarify naming of styles and formats 2016-05-14 13:57:07 -04:00
Thomas Fussell
916883e427 fix last few tests 2016-05-14 12:42:34 -04:00
Thomas Fussell
e1e29e1f30 Merge remote-tracking branch 'xpol/shared-string-with-different-formatted-parts' into styles-refactoring 2016-05-14 09:30:05 -04:00
Xpol Wan
6500f71f70 Remove log code. 2016-05-14 16:36:14 +08:00
Xpol Wan
c18110e282 add support for one cell with different formatted text nodes.
Eg, In one cell the text is abcdef, where abc and def have different format (e.g., different colours or fonts).
The the sharedString.xml in xlsx have multiple r node in si node:

```xml
    <si>
        <r>
            <t>abc</t>
        </r>
        <r>
            <rPr><sz val="10"/><color rgb="FFFF0000"/><rFont val="微软雅黑"/><charset val="134"/></rPr>
            <t>def</t>
        </r>
    </si>
```

Currently `shared_strings_serializer::read_shared_strings()` only reads the first r node, and should consider as a bug.

This commit fixes this bug by read all `r.t.text` values in one `si` node and concat the text into one single string.
2016-05-14 16:24:21 +08:00
Thomas Fussell
d2d53dfc6d only a few failing tests remain 2016-05-13 14:40:17 -04:00
Thomas Fussell
739be9d850 merge changes from other computer 2016-05-13 12:32:44 -04:00
Thomas Fussell
31b546b1d5 general API improvements 2016-05-11 19:24:53 -04:00
Thomas Fussell
713bd1ea12 almost done finally. still need to figure out the interaction between styles and named styles, maybe improve naming 2016-05-03 15:37:34 -04:00
Thomas Fussell
198483c88e the library compiles now. tests don't 2016-05-01 11:08:56 -04:00
Thomas Fussell
9bd6e92297 not done yet. I can't beleive how complicated this is 2016-04-30 16:19:45 -04:00
Thomas Fussell
720edc143f allow duplicate shared strings (why excel?). eventually we should do a garbage collection step that deduplicates shared strings after the workbook is loaded 2016-04-26 13:09:17 -04:00
Adam Nielsen
62c00744b0 Add test for duplicate shared string 2016-04-26 13:28:57 +10:00
Thomas Fussell
6471420ea8 Merge branch 'master' of github.com:tfussell/xlnt 2016-04-22 06:25:06 -04:00
Thomas Fussell
9c7bdb8191 change default workbook encoding to utf8 2016-04-22 06:24:54 -04:00
Adam Nielsen
c20795dd9f Add test for charset error when opening valid .xlsx 2016-04-22 16:30:32 +10:00
Thomas Fussell
c4e3829da2 Merge branch 'master' of github.com:tfussell/xlnt 2016-03-14 11:50:41 +08:00
Thomas Fussell
1e045d7e95 implement more cell formatting 2016-03-14 11:46:01 +08:00
Thomas Fussell
4d2c68a575 remove accidental commit of debugging test 2016-03-10 17:35:16 +08:00
Thomas Fussell
5bf3a660fe correct mixup between format and number_format 2016-03-10 17:34:54 +08:00
Thomas Fussell
5a9c18834d work on round-tripping of a workbook with complex formatting 2016-03-10 17:12:51 +08:00
Thomas Fussell
1c6c36d1a0 adding multiple sheets invalidates previous handles, duh 2016-03-09 03:14:57 -05:00
Thomas Fussell
ce7b30d7ab wrong header... 2016-03-09 14:02:14 +08:00
Thomas Fussell
bb1cbdb4ac add missing header 2016-03-09 13:57:37 +08:00
Thomas Fussell
e401e42bee use unambiguous constructor 2016-03-09 13:47:59 +08:00
Thomas Fussell
0c3a167f7c implement app properties reading/writing, case-insenstive border enum->string conversions for some style enums 2016-03-09 11:32:32 +08:00
Thomas Fussell
e7b062bb4c improve pane freezing, add print area and print title rows/cols, sync worksheet tests 2016-03-08 15:45:35 +08:00
Thomas Fussell
ad69dcb335 need to copy worksheet_ipml before modifying worksheet container, otherwise handle become invalid during realloc 2016-03-08 11:35:22 +08:00
Thomas Fussell
b56722ed65 fix unsigned signed conversion warning 2016-03-07 13:42:33 +08:00
Thomas Fussell
d11a545d3f fix windows build 2016-03-07 13:28:52 +08:00
Thomas Fussell
ca6dea8cbc update workbook tests 2016-03-06 10:39:50 +08:00
Thomas Fussell
74bfdb6f7d clean up iterators 2016-01-24 11:15:49 -05:00
Thomas Fussell
d62ad6731d update copyright year 2015-12-24 17:10:02 -05:00
Thomas Fussell
40eb6c9cb6 fix missing header for std::runtime_error 2015-12-24 15:58:31 -05:00
Thomas Fussell
34669fde87 Merge pull request #37 from degaart/master
added worksheet::has_cell
2015-12-24 15:53:12 -05:00
Thomas Fussell
537b76dd3f clean up styles and hashing, add license boilerplate to all files, update readme, finish moving implementations to source files 2015-12-24 15:51:11 -05:00
degaart
7f5b76447f added worksheet::has_cell
Added method worksheet::has_cell to check wether a const-qualified
worksheet objecthas data for a given cell
2015-12-24 09:58:11 +03:00
Thomas Fussell
7dc48c7c0b fix issue #34 2015-12-22 14:39:41 -05:00
Thomas Fussell
1ec1b2ac83 add test to reproduce issue #34 2015-12-22 14:39:06 -05:00
Thomas Fussell
26d0ace151 fix #35 by using utfcpp for utf8 string validation 2015-12-22 14:23:47 -05:00
Thomas Fussell
6cbe7c0bf9 fix msvc errors 2015-11-22 13:02:37 -05:00
Thomas Fussell
b2b9732a09 work on tests 2015-11-22 12:41:27 -05:00
Thomas Fussell
d749c563e5 add test for timedelta 2015-11-22 00:33:56 -05:00
Thomas Fussell
eb961a91b9 fix missing header 2015-11-21 14:32:50 -05:00
Thomas Fussell
acfb5c642b keep cleaning up iterators, documenting classes, and moving implementations to source files 2015-11-20 20:41:32 -05:00
Thomas Fussell
47b81a83de start moving all implementations to source files 2015-11-19 22:54:54 -05:00
Thomas Fussell
1e746ad587 fix windows configuration 2015-11-10 20:47:07 -05:00
Thomas Fussell
990c2a926f fix minor issues and configure script 2015-11-10 19:47:31 -05:00
Thomas Fussell
40fc54f55e revert to 3bb988c422 reluctantly 2015-11-10 18:58:54 -05:00
Thomas Fussell
6a098d3049 clean up platform specific overloads 2015-11-07 20:20:36 -05:00
Thomas Fussell
7d2e641966 overloads for all int types are tricky 2015-11-07 20:07:22 -05:00
Thomas Fussell
6aaf380c26 fix windows build for dll and static lib 2015-11-07 20:00:54 -05:00
Thomas Fussell
7b5246f9dd finish up custom string class implementation 2015-11-07 18:37:23 -05:00
Thomas Fussell
4919e7ea00 fix some failing tests 2015-11-04 22:03:18 -05:00
Thomas Fussell
665f8fbebc made a new string class for dll exports 2015-11-04 18:45:03 -05:00
Thomas Fussell
3bb988c422 add macro to classes and functions for dll export/import 2015-11-04 00:36:14 -05:00
Thomas Fussell
73f1a8b9ee work on documentation 2015-11-03 18:26:33 -05:00
Thomas Fussell
7ec6e2d4df finish documenting all classes in cell module and clean up their APIs 2015-11-03 14:53:48 -05:00
Thomas Fussell
d2d669d6c5 clean up and document cell_reference 2015-11-03 09:51:23 -05:00
Thomas Fussell
3e99225652 forgot to update some includes 2015-11-03 09:06:01 -05:00
Thomas Fussell
500303b303 fix issue #18 2015-11-03 08:50:36 -05:00
Thomas Fussell
a2919dfed8 add missing runtime_error include and improperly located headers 2015-11-03 08:46:40 -05:00
Thomas Fussell
2c8ccdfcda restructure source and clean up cmake scripts 2015-11-03 08:38:09 -05:00
Thomas Fussell
90d8d545ed fix windows build and warnings 2015-11-02 17:25:10 -05:00
Thomas Fussell
9c05e04f70 fix -Wall -Wextra -pedantic warnings 2015-11-02 16:45:05 -05:00
Thomas Fussell
c9b6b9e473 fix windows errors 2015-11-02 14:22:13 -05:00
Thomas Fussell
451abd1de6 clean up includes 2015-11-02 01:07:43 -05:00
Thomas Fussell
2f8032437c fix all tests 2015-11-01 23:52:19 -05:00
Thomas Fussell
fef68e460f restructure build system 2015-11-01 12:31:29 -05:00
Thomas Fussell
35953661e8 fix missing header 2015-11-01 09:48:51 -05:00
Thomas Fussell
832294ace6 use new windows include in all files 2015-11-01 09:47:52 -05:00
Thomas Fussell
7f840bb904 clang-format all files, update .clang-format, fix minor compilation errors 2015-11-01 09:43:01 -05:00
Thomas Fussell
3a50c2bb9d fix missing header 2015-10-31 06:58:59 -04:00
Thomas Fussell
6f4ba5e2df fix missing header 2015-10-31 06:56:54 -04:00
Thomas Fussell
b410ee87be fix missing iterator header 2015-10-31 06:54:41 -04:00
Thomas Fussell
12383a6c35 fix missing iterator header 2015-10-31 06:52:59 -04:00
Thomas Fussell
65a30e710f remove string_table 2015-10-31 06:49:10 -04:00
Thomas Fussell
9dce7b8f0c almost done. phew... 2015-10-30 18:54:04 -04:00
Thomas Fussell
84e9dd099e keep refactoring serialization code, updating tests 2015-10-29 23:16:31 -04:00
Thomas Fussell
75ec0f8eee keep refactoring serialization code 2015-10-29 19:37:07 -04:00
Thomas Fussell
c884ad7f82 start refactoring serialization code 2015-10-29 13:46:56 -04:00
Thomas Fussell
3176ee828c implement row and column sizing 2015-10-28 15:08:54 -04:00
Thomas Fussell
0efb3d2f97 fix worksheet reordering on save 2015-10-26 23:06:00 -04:00
Thomas Fussell
959ba08e4a fix travis build 2015-10-26 17:35:47 -04:00
Thomas Fussell
e9ebade1af fix travis build 2015-10-26 17:27:26 -04:00
Thomas Fussell
ae0d572776 fix travis build 2015-10-26 17:23:41 -04:00
Thomas Fussell
6b80eb5a95 fix travis build 2015-10-26 17:17:39 -04:00
Thomas Fussell
b108794579 references aren't assignable, switch them to pointers 2015-10-26 17:08:41 -04:00
Thomas Fussell
de48eeb2eb clean up style reading and writing, add travis config 2015-10-26 15:57:37 -04:00
Thomas Fussell
02e2dde4c7 fix minor linux build issues 2015-10-26 00:44:55 -04:00
Thomas Fussell
c07b97f3e8 improve printing cells to stream and round tripping 2015-10-26 00:26:48 -04:00
Thomas Fussell
c802a1f591 finished minimal styles implementation 2015-10-23 14:42:36 -04:00
Thomas Fussell
21b3d366d6 change some things 2015-10-20 23:30:10 -04:00
Thomas Fussell
cbab7a36cb clean up styles 2015-10-20 13:53:47 -04:00
Thomas Fussell
3b56af6b8e still working on styles, so close 2015-10-19 00:03:52 -04:00
Thomas Fussell
2f07e0ae62 continue implementing styles 2015-10-18 15:30:46 -04:00