Thomas Fussell
bf3e278ea1
change two missed long double literals into doubles
2017-09-10 09:36:04 -04:00
Thomas Fussell
299fc7d572
Merge branch 'dev' into dev
2017-09-08 23:15:06 -04:00
Thomas Fussell
396e6eb948
fix clang warnings
2017-09-08 22:59:19 -04:00
Thomas Fussell
12007fe2d8
change cell numeric value type from long double to double, closes #201
2017-09-08 21:05:34 -04:00
Thomas Fussell
0d125b1534
encapsulate stateful stringstream string to float conversion into a separate struct
2017-09-08 20:10:46 -04:00
Thomas Fussell
fcd68dba8f
optimize cell memory usage. big improvement!
2017-09-08 19:41:34 -04:00
Thomas Fussell
716a81a19f
optimize hot code paths
2017-09-08 19:08:38 -04:00
Thomas Fussell
bbdace8b44
use memoization to replace cached static qnames
2017-09-08 18:03:56 -04:00
Thomas Fussell
85010f9f11
memoize calls to xml::qname builder
2017-09-08 17:39:59 -04:00
Thomas Fussell
fff2feccd2
update licenses
2017-09-08 15:26:47 -04:00
Thomas Fussell
50280ba2ab
don't define THROW_ON_INVALID_XML by default on NDEBUG builds, fixes #179
2017-09-08 10:36:49 -04:00
tal
46a10cfb7b
Issue #216-cleanup for Clang 5.0 build
...
switched to nullptr instead of NULL or 0.
Switch some expressions using ',' to multiple statements separated by ';'
Removed unused template function
Used override keyword for some overridden virtual functions.
2017-09-04 13:43:30 -06:00
sukoi26
8d85ed917f
Merge branch 'dev' into dev
2017-09-02 22:07:07 +02:00
Thomas Fussell
f174dd825d
Merge pull request #209 from pebble2015/master
...
fix #204 #205
2017-09-02 10:10:35 -04:00
sukoi26
b21b856e68
code optimized for s attribut cell / row format
...
improve the performance
2017-08-29 13:01:47 +02:00
pebble2015
f3d5d18035
fix xwindow bug
...
fix xwindow bug
2017-08-27 13:44:06 +08:00
Chris
e5d6a26e17
fixup formatting
2017-08-26 11:04:23 -05:00
Chris
5cc24fda39
PERF: optimize read_cell
2017-08-26 10:49:48 -05:00
Thomas Fussell
4e2c0c0ffb
use column width adjustment as specified in standard so that width in Excel on Windows matches value in xlnt, #193
2017-08-18 21:38:10 -04:00
Thomas Fussell
3257274057
use utfcpp on all platforms since codecvt has been deprecated in c++17, closes #197
2017-08-15 18:23:28 -04:00
Thomas Fussell
de0e010056
use pybind11 instead of raw C Python API, python_streambuffer is broken for now
2017-07-30 09:48:57 -07:00
Thomas Fussell
eaaa310cef
start implementing xlsx2arrow params
2017-07-19 17:21:55 -07:00
Thomas Fussell
8d051e36e5
fix remaining clang warnings. so many static_casts...
2017-07-17 22:24:00 +00:00
Thomas Fussell
7da9187808
fix some clang warnings
2017-07-16 22:32:35 +00:00
Thomas Fussell
b98f8c4fe7
don't cast integral long double to ptrdiff_t before writing to xml, fixes #188
2017-07-16 11:16:09 -07:00
Thomas Fussell
5b95b3d463
begin implementing xlsx2arrow, fix msvc warnings, other stuff
2017-07-14 22:18:11 -07:00
Thomas Fussell
e38b1cdd69
fix gcc warnings
2017-07-09 16:44:00 +00:00
Thomas Fussell
f97ad6c1bd
start working on streaming write
2017-07-04 17:52:46 -07:00
Thomas Fussell
6777982f08
clarify target_mode namespace
2017-07-02 19:17:14 -07:00
Thomas Fussell
9f95894372
use unique_ptr constructor instead of make_unique (C++14+ only)
2017-07-02 19:10:22 -07:00
Thomas Fussell
456b9bbd80
specify hash to use (scoped_enum_hash) for variant::type hash table
2017-07-02 19:00:37 -07:00
Thomas Fussell
7fb9df97be
ifdef out codecvt
2017-07-02 18:56:16 -07:00
Thomas Fussell
245f5117d3
don't use string_literal for now
2017-07-02 18:56:00 -07:00
Thomas Fussell
e104c6a9b6
specify namespace in friend declaration
2017-07-02 18:54:32 -07:00
Thomas Fussell
0ee0817757
include utfcpp for now to allow GCC <5.0 to build xlnt
2017-07-02 18:33:53 -07:00
Thomas Fussell
56d744b6f9
start cleaning up code
2017-06-25 09:29:45 -04:00
Thomas Fussell
fdd91f817f
basic streaming read works now, just need to clean up the logic
2017-06-24 22:07:37 -04: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
3153600768
read worksheet xml correctly
2017-06-22 08:56:01 -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
2305eae8b6
pass streaming arg to read_part
2017-06-16 09:11:42 -04:00
Thomas Fussell
7834b564f4
handle absolute relationship targets the correct way
2017-06-16 09:11:24 -04:00
Thomas Fussell
7b391321f6
Merge branch 'master' into feature/streaming
2017-06-15 18:10:37 -04:00
Thomas Fussell
342184139f
intermediate commit
2017-06-15 18:10:27 -04:00
Thomas Fussell
cae6276b23
prevent exception from being thrown when a view doesn't contain window attributes
2017-06-14 15:45:01 -04:00
Thomas Fussell
d2be054b7c
optimize shared strings and handle formula strings correctly
2017-05-10 08:44:25 -04:00
Thomas Fussell
b851d1c143
prevent share string formatting from being overwritten during consumption
2017-05-09 09:01:01 -04:00
Thomas Fussell
f0b1e789a3
use xml:space=preserve when writing shared strings with trailing whitespace
2017-05-09 08:46:12 -04:00
Thomas Fussell
7ddd290e92
ignore dateCompatibility attribute too
2017-05-08 11:38:10 -04:00
Thomas Fussell
4aff818a87
kepp calcChain relationship, but don't actually write file to prevent excel file recovery warning
2017-05-08 10:51:56 -04:00
Thomas Fussell
a37a1e102a
handle all workbookPr attributes according to ecma 376
2017-05-08 10:50:33 -04:00
Thomas Fussell
239c76659f
work on writing a valid compound document
2017-05-02 22:22:22 -04:00
Thomas Fussell
a5c0d03bcc
fix windows dll problem due to not exporting vector_streambufs
2017-04-30 23:25:57 -04:00
Thomas Fussell
e26364c388
better
2017-04-30 23:13:13 -04:00
Thomas Fussell
c677a14969
fix some stream reading. all tests passing (very very slowly) so now it's time for optimization
2017-04-30 21:16:05 -04:00
Thomas Fussell
ee642fc6c1
getting there
2017-04-30 20:21:47 -04:00
Thomas Fussell
4da901d387
forgot to commit new vector_streambuf source file
2017-04-30 17:37:35 -04:00
Thomas Fussell
b7bf16d47c
implement input and output streambufs for compound document streams
2017-04-30 17:23:28 -04:00
Thomas Fussell
f42d3eee74
move vector_streambuf definitions to a separate file, fix zip buffer bug
2017-04-29 12:29:41 -04:00
Thomas Fussell
f5b5d67594
wip
2017-04-28 17:56:05 -04:00
Thomas Fussell
be37df3c86
intermediate commit
2017-04-28 12:42:42 -04:00
Thomas Fussell
6334907de7
work on short streams
2017-04-28 10:58:55 -04:00
Thomas Fussell
a90b32f386
switch to full in-memory approach, still working
2017-04-26 23:19:28 -04:00
Thomas Fussell
bb91308dd4
work in progress
2017-04-26 12:02:49 -04:00
Thomas Fussell
1e1e8272ae
coding is done finally. time to debug some compound files
2017-04-25 18:14:47 -04:00
Thomas Fussell
562e163bf6
try to add a red black tree. I haven't done algorithms in a long time
2017-04-24 22:16:03 -04:00
Thomas Fussell
be59d522a6
still working. It's starting to come together
2017-04-24 19:23:51 -04:00
Thomas Fussell
c642db6cc2
continue fleshing out cdf writing, getting close now...
2017-04-24 16:06:58 -04:00
Thomas Fussell
16e1a1f124
intermediate commit
2017-04-24 08:50:10 -04:00
Thomas Fussell
8f4f24c180
start wiring up directory tree during writing
2017-04-23 20:51:50 -04:00
Thomas Fussell
c020d31f58
delete allocation table class
2017-04-23 20:27:16 -04:00
Thomas Fussell
322190d386
remove header offset and set sector size before loading master allocation table sectors
2017-04-23 18:56:31 -04:00
Thomas Fussell
126f22816b
intermediate commit
2017-04-23 18:18:35 -04:00
Thomas Fussell
2fc692d694
separate compound file into a reader and a writer class
2017-04-23 16:56:01 -04:00
Thomas Fussell
be11002a93
fix clang warnings
2017-04-23 11:53:52 -04:00
Thomas Fussell
f38dc4169b
finish rewriting pole, continue work on encryption
2017-04-22 20:43:26 -04:00
Thomas Fussell
89858e32b3
intermediate commit
2017-04-22 14:25:27 -04:00
Thomas Fussell
3a57242b68
clean up pole, get it ready for writing
2017-04-21 21:58:40 -04:00
Thomas Fussell
e2f733f6e0
intermediate commit
2017-04-21 19:52:02 -04:00
Thomas Fussell
4dedcd23dd
use some placeholder data for agile key
2017-04-20 14:49:38 -04:00
Thomas Fussell
b26d764624
fix some gcc problems
2017-04-20 14:12:59 -04:00
Thomas Fussell
b2a5110939
organize detail files, start wiring up encryption logic
2017-04-20 14:03:03 -04:00
Thomas Fussell
40ba1012b3
move endian swap to a separate function
2017-04-19 16:55:41 -04:00
Thomas Fussell
607e069b33
fix two crypto related todos
2017-04-19 16:00:33 -04:00
Thomas Fussell
ca17462f43
add missing include for std::transform
2017-04-18 20:11:16 -04:00
Thomas Fussell
83ea1ff58e
implement password verification for standard encrypted xlsx files
2017-04-18 19:50:37 -04:00
Thomas Fussell
adda7b877a
add meta tests (tests that test test functions), optimize sha calls, test incorrect passwords
2017-04-18 18:30:54 -04:00
Thomas Fussell
b0f1bf4b77
include headers for memcpy and size_t in sha implementations
2017-04-13 22:31:44 -04:00
Thomas Fussell
28cee5f14b
use platform-dependent byteswap
2017-04-13 21:59:09 -04:00
Thomas Fussell
3b2a0ac5d6
switch to much faster project nayuki sha implementations
2017-04-13 21:45:07 -04:00
Thomas Fussell
b85680c5ed
start rewiring tests
2017-04-13 19:01:30 -04:00
Thomas Fussell
8bf7d0c7a6
oops, forgot to include the locale, #144
2017-04-12 19:48:00 -04:00
Thomas Fussell
8b1c6c7465
a little platform dependent magic to fix build problems, affects #144
2017-04-12 19:44:18 -04:00
Thomas Fussell
5b9304960c
accept utf8 passwords for decrypting workbooks, #144
2017-04-12 19:21:21 -04:00
Thomas Fussell
5450a23be1
apparently pArray is used in debug builds
2017-04-11 18:13:38 -04:00
Thomas Fussell
fd737912ce
fix some vs-specific problems
2017-04-11 18:10:24 -04:00
Thomas Fussell
4b174ab268
fix misleading indentation in miniz, missing header, and missing forward declarations
2017-04-11 18:04:05 -04:00
Thomas Fussell
05fb40438c
Merge branch 'master' of github.com:tfussell/xlnt
2017-04-11 17:57:56 -04:00
Thomas Fussell
cdcd49305d
add base64 license
2017-04-11 17:55:52 -04:00
Thomas Fussell
9fa9343d89
fix some stuff
2017-04-11 17:49:07 -04:00
Thomas Fussell
4c40651451
add license header to some crypto files
2017-04-11 16:58:09 -04:00
Thomas Fussell
be0c1ac03a
remove unused headers
2017-04-11 16:10:57 -04:00
Thomas Fussell
a7cd2c9ee5
link in libstudxml as object files
2017-04-11 16:04:17 -04:00
Thomas Fussell
077e181617
pare down ltc
2017-04-11 14:23:54 -04:00
Thomas Fussell
0d65569857
pare down ltc
2017-04-11 14:14:36 -04:00
Thomas Fussell
ea7b7074f0
pare down ltc
2017-04-11 13:48:09 -04:00
Thomas Fussell
36dc88cf24
pare down ltc
2017-04-11 13:35:50 -04:00
Thomas Fussell
cc165dbb67
pare down ltc
2017-04-11 13:11:05 -04:00
Thomas Fussell
c57e1a2bbe
pare down ltc
2017-04-11 12:38:20 -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
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