Commit Graph

371 Commits

Author SHA1 Message Date
Thomas Fussell
83cbc3f7eb organize files 2017-04-11 11:26:57 -04:00
Thomas Fussell
fc4d284615 begin removing external dependencies 2017-04-11 11:08:16 -04:00
Thomas Fussell
116106d568 fix conditional_format redefinition warning and don't try to write conditional formats for a worksheet without a stylesheet 2017-04-03 19:49:38 -04:00
Thomas Fussell
d54ddea5cc Merge branch 'master' of http://github.com/tfussell/xlnt 2017-04-03 19:24:46 -04:00
Thomas Fussell
9766daacd5 initial implementation of conditional formatting plus a nifty little sample of converting images to workbooks 2017-04-03 19:24:36 -04:00
Thomas Fussell
83d2d18d1f finish documenting all headers (well enough). closes #28 2017-03-30 23:52: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
1121bcbe15 boring boring documentation 2017-03-25 11:22:21 -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
e8204133a9 switch xlsx_producer cell value call, how many more can there be? 2017-03-21 19:58:16 -04:00
Thomas Fussell
cf7f4e6c83 clean up switches, closes #133 2017-03-20 19:22:46 -04:00
Thomas Fussell
f7db4b0248 add default cases for hash_algorithm value traits serialization 2017-03-19 23:21:40 -04:00
Thomas Fussell
fe041b9aa1 increment ws index when writing calcChain 2017-03-13 19:12:17 -04:00
Thomas Fussell
c11fcd169e initial implementation of calcChain parser. I can only imagine how many problems I'm overlooking here 2017-03-13 19:10:14 -04:00
Thomas Fussell
daae577178 stop trying to build zlib and cryptopp locally 2017-03-10 18:33:20 -05:00
Thomas Fussell
5b61145a0b only expect alternatecontent if it's present 2017-03-09 21:35:36 -05:00
sukoi26
fc1d73fee2 Merge pull request #1 from tfussell/master
update
2017-03-01 19:42:41 +01: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
sukoi26
fcb16ed655 comment change skip "mc:Ignorable" attribut and "mc:alternateContent"
concern  location of the comment
"the Ignorable attribute specifies namespaces that can be ignored when they are not understood by the consuming application. Alternate-Content elements specify markup alternatives that can be chosen by an application at run time. For example, Word 2013 can choose only the markup alternative that it recognizes. The complete list of compatibility-rule attributes and alternate-content elements and their details can be found in the specification. " and so  to  implement
2017-02-25 11:50:45 +01:00
sukoi26
2daf1dd32a boder style upper case name
Value must be one of {‘medium’, ‘mediumDashDot’, ‘mediumDashed’, ‘dashDotDot’, ‘double’, ‘dotted’, ‘mediumDashDotDot’, ‘thick’, ‘thin’, ‘hair’, ‘dashed’, ‘slantDashDot’, ‘dashDot’}
2017-02-24 23:14:03 +01:00
sukoi26
07cefa4a2d border style upper case letter
Value must be one of {‘medium’, ‘mediumDashDot’, ‘mediumDashed’, ‘dashDotDot’, ‘double’, ‘dotted’, ‘mediumDashDotDot’, ‘thick’, ‘thin’, ‘hair’, ‘dashed’, ‘slantDashDot’, ‘dashDot’}
2017-02-24 23:10:57 +01:00
Thomas Fussell
4ed8dae49c minor cleanup 2017-02-18 20:33:59 -06:00
sukoi26
60459bcd25 Merge remote-tracking branch 'upstream/master' 2017-02-18 09:27:06 +01:00
Thomas Fussell
767d498dac separate crypto_helper into header file, fix lots of stuff 2017-02-17 23:11:06 -06:00
sukoi26
b758b5f7e5 recommit "rename some things and fix some formatting" 2017-02-14 22:45:44 +01:00
sukoi26
6b9995be44 recommit "rename some things and fix some formatting" 2017-02-14 22:33:54 +01:00
sukoi26
dc3decd0be fix some comments on autofilter update
push mistake
2017-02-14 22:11:31 +01:00
sukoi26
bb8202f779 update for xf pivotButton quotedPrefix attributes 2017-02-14 22:02:51 +01:00
sukoi26
8fa929256d update quotePrefix location , add pivotButton 2017-02-13 16:28:32 +01:00
sukoi26
167c14e908 attribute "quotePrefix" in style
skip temporary , to analyze the using
2017-02-13 15:01:42 +01:00
sukoi26
0c517a9b0a autofilter complex type
a filter is a complex type to manage 
<autoFilter ref="A1:D25"> 
  <filterColumn colId="0"> 
    <filters> 
      <filter val="Southeast" /> 
      <filter val="Northeast" /> 
    </filters> 
  </filterColumn> 
</autoFilter>
2017-02-13 13:41:35 +01:00
Thomas Fussell
84011553a8 rename some things and fix some formatting 2017-02-10 20:22:38 -08:00
sukoi26
3fee3f0eb5 skip comment "shapeId" 2017-02-07 15:13:34 +01:00
sukoi26
d7486830a6 comment changes anchor() , in element() 2017-02-06 23:00:45 +01:00
Thomas Fussell
89be3d83df instead of always writing at least one style, don't write cellStyleXfs and cellStyles at all when there are no styles defined 2017-02-03 19:40:13 -06:00
sukoi26
09d9561683 update problem on char latest commit 2017-01-28 10:02:02 +01:00
sukoi26
078fab6953 problem char latest change 2017-01-28 00:15:18 +01:00
sukoi26
833d5e81ae problem char on latest change 2017-01-28 00:13:03 +01:00
sukoi26
a1cf2fefd2 update for style xfs
on file xl\styles.xml file find <cellStyleXfs count="0"/>
problem need count 1
2017-01-28 00:08:06 +01:00
sukoi26
b83dcd6a1f variant read, bool change take in account number(0,1) or text(false, true) 2017-01-27 23:48:27 +01:00
Thomas Fussell
e14e595b6a document some things 2017-01-27 23:41:05 +01:00
Thomas Fussell
9907f5a8c8 re-enable round-trip tests, continue condensing test files 2017-01-27 23:41:05 +01:00
alaw
9262576f27 custom-properties bool variant change i4 to bool 2017-01-22 19:34:40 +01:00
Thomas Fussell
0c100e166a fix up comments, hyperlinks, and formulae consumption tests 2017-01-21 19:12:26 -05:00
Thomas Fussell
7a991da9df Merge branch 'master' of http://github.com/tfussell/xlnt 2017-01-21 10:29:32 -05:00
Thomas Fussell
22c1f08b83 fix custom property pids 2017-01-21 10:29:23 -05:00
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
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
90c7e929a9 clean up test xml_helper, rename zip to zstream 2017-01-10 22:14:33 +01: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
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
e4d18b5603 skip optional protection attributes if they're not present, closes #93 2017-01-02 18:32:10 -05:00
Thomas Fussell
afbab819c4 implement consumption of vt:lpwstr custom properties 2017-01-02 17:42:16 -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
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
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
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