Thomas Fussell
2991872778
clean up namespace handling in consumer and producer, improve stylesheet consumption
2017-01-10 20:25:59 -05: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
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
afbab819c4
implement consumption of vt:lpwstr custom properties
2017-01-02 17:42:16 -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
e250174d1f
define hash struct for scoped enum for header_footer's unordered_map
2016-12-14 11:25:18 +01: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
30776eb77c
let's just get rid of the method
2016-12-03 21:31:48 +01:00
Thomas Fussell
7743750dfa
will this work?
2016-12-03 21:19:54 +01:00
Thomas Fussell
ea5a5d1fec
be even more specific
2016-12-03 16:50:14 +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
33fdfd7ead
manifest...
2016-12-03 16:40:24 +01:00
Thomas Fussell
9514984d42
getting closer
2016-12-03 16:31:10 +01:00
Thomas Fussell
e6db86025c
let's try that again
2016-12-03 16:05:35 +01:00
Thomas Fussell
8425e57937
elaborate types with the same names as methods
2016-12-03 15:58:51 +01:00
Thomas Fussell
efa8c90e54
fix method return type declaration
2016-12-03 12:57:01 +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
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
dab1b0218d
begin cleaning up xml handling in consumer
2016-11-19 16:42:16 -05: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
d6c7162b17
fix gcc error caused by methods with the same names as classes
2016-11-07 22:05:49 -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
98d506a5db
skip unused gz sources in zlib, fix style equality operator exports
2016-10-31 21:53:22 -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
012dd0984e
initial implementation of wstring filenames
2016-10-30 21:17:51 -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
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
3b17675bd1
fix linkage for msvc shared build
2016-10-29 10:43:43 -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
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
9c8cba9f3f
finally figured out how to decrypt with botan--swapping back out for botan
2016-10-24 22:09:15 -04:00
Thomas Fussell
0a80c302b3
fix sheet deletion, #71
2016-10-22 13:53:44 -04:00
Thomas Fussell
4d20ccaa67
fix some xlsx consumption and production
2016-10-13 20:11:02 -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
a81a0a6dde
use value_traits for enum parsing/serialization and refactor xlsx_producer helper functions
2016-09-18 11:32:59 -04:00
Thomas Fussell
afb9c75369
fix windows build
2016-09-17 08:06:18 -04:00
Thomas Fussell
cb5a9d8802
continue fixing up border and fill round tripping
2016-09-10 10:05:06 -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
300f694f04
missed some
2016-08-18 22:11:59 -04:00
Thomas Fussell
c1ac0c790a
clarify types
2016-08-18 22:03:31 -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
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
237465f731
fix some build errors
2016-08-10 00:42:01 -10:00
Thomas Fussell
05ea6d0dbd
fix some build errors
2016-08-10 00:32:09 -10:00
Thomas Fussell
20b9217cd8
encapsulate URIs with a class and improve path interface
2016-08-10 00:09:54 -10: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
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
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
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
3a9fda8bfe
improve relationships<=>worksheets handling, fixes #59
2016-07-26 20:13:09 -04:00
Thomas Fussell
9a6bcdfc54
fix range iterator tests
2016-07-23 21:24:25 -04:00
Thomas Fussell
51db47e2a8
test workbook and fix mising template specialization
2016-07-23 19:43:24 -04:00
Thomas Fussell
5cdaa6ec6b
remove cell_reference comparisons
2016-07-22 23:41:57 -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
3376741996
work on docs
2016-07-21 23:25:24 -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
ffeb1b1046
remove unneeded number formats and finish testing number format
2016-07-21 20:15:53 -04:00
Thomas Fussell
dec6aaa49a
test some stuff, rename some other stuff
2016-07-20 19:04:44 -04: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
0502e1e2d4
test test test
2016-07-16 19:40:20 -04:00
Thomas Fussell
f406f657c4
test some skipped branches
2016-07-16 15:57:50 -04:00
Thomas Fussell
32707dde3b
dll export pattern_fill and gradient_fill
2016-07-14 22:15:51 -04:00
Thomas Fussell
25b995bc78
improve fill and style serialization test coverage
2016-07-14 22:09: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
24b966cf86
export column_t friend functions, attempt to exclude test headers from coveralls
2016-07-09 14:21:10 -04:00
Thomas Fussell
60372fb145
cover alignment.cpp
2016-07-09 10:13:56 -04:00
Thomas Fussell
c99d14792f
Merge branch 'master' of github.com:tfussell/xlnt
2016-07-05 21:27:47 -04:00
Thomas Fussell
9f1ac60d20
start implementing complex number formats, test builtin formats
2016-07-05 21:27:35 -04:00
Xpol Wan
4976f54145
Fixes static build for msvc.
2016-07-05 13:03:00 +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
bdc770d23a
improve number_format test coverage
2016-06-24 10:43:51 +01:00
Thomas Fussell
c7bc216026
improve worksheet test coverage
2016-06-23 09:33:10 +01:00
Thomas Fussell
7b6b5517d9
finish testing fill
2016-06-19 21:30:15 +01:00
Thomas Fussell
27cb3a089d
work on cell.cpp test coverage
2016-06-19 19:43:41 +01:00
Thomas Fussell
e8c2dd37c3
Merge pull request #53 from xpol/fixes-reference-type-for-iterators
...
Fixes type for all iterator::reference.
2016-06-15 08:24:20 -04: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
f521974edc
Merge pull request #52 from xpol/fix-linkage-for-utf8string
...
Add XLNT_CLASS to utf8string to fixes the linking error.
2016-06-15 08:22:56 -04:00
Thomas Fussell
5d2c75014b
improve range iterators and their tests
2016-06-15 12:45:05 +01:00
Xpol Wan
5f7a76f6bd
Its std::ptrdiff_t in <cstddef>.
2016-06-15 12:18:06 +08:00
Xpol Wan
a0b8b8f5e2
Fixes type for all iterator::reference.
...
1. we have overloaded operator*() for all iterators, returning a value type T (not a reference).
2. we use the std::reverse_iterator, its operator*() returns a reference type, by default the reference type is T&.
follow implement std::reverse_iterator::operator*() const are taken form VS2015:
```C++
// in class reverse_iterator
reference operator*() const
{ // return designated value
_RanIt _Tmp = current;
return (*--_Tmp);
}
```
The `_RanIt` is our base non reverse iterators, the type of `(*--_Tmp)` is `T`. and the `reference` is `T&`. This cause
> warning C4172: returning address of local variable or temporary
And it is bug.
This commit specifies explicitly the 5th template argument for all our iterators base class like `std::iterator<tag,T, ptrdiff_t, T*, T>`.
It make the `reference` to be actually `T` (the value type) and fixes the issue.
2016-06-15 12:05:16 +08:00
Xpol Wan
86002b5338
Add XLNT_CLASS to utf8string to fixes the linking error.
2016-06-15 11:30:51 +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
3d29186d6a
improve enum serialization, closes #50
2016-06-12 19:59:59 -04:00
Thomas Fussell
7dafd2f3a3
clean up xlnt.hpp, closes #39
2016-06-11 15:50:03 -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
85e1b4a333
refactor styles... again
2016-06-10 13:40:50 -04:00
Thomas Fussell
4e9c48eba9
add missing header to main include file
2016-05-16 20:59:45 -04:00
Thomas Fussell
40b0f9908a
remove misplaced text and text_run sources
2016-05-16 19:33:32 -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
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
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
Thomas Fussell
1fe590d181
add missing include in main header, closes #38
2016-04-21 00:20:03 -04:00
Thomas Fussell
1e045d7e95
implement more cell formatting
2016-03-14 11:46:01 +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
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
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
34aa24bdd6
fix formatting
2016-01-17 22:23:31 -08:00