Commit Graph

466 Commits

Author SHA1 Message Date
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
Thomas Fussell
d1ea08fd13 minor linux fixes 2015-10-16 19:46:21 -04:00
Thomas Fussell
d08071a745 fix test failures on windows 2015-10-16 19:05:21 -04:00
Thomas Fussell
a63984969e improve date handling and printing 2015-10-16 18:35:11 -04:00
Thomas Fussell
e3bb0be98e work on writer 2015-10-14 18:05:13 -04:00
Thomas Fussell
6b3781d03b begin refactoring writing code 2015-10-14 00:03:48 -04:00
Thomas Fussell
7316e2184c replace pugiconfig.hpp with local header, fix some constness, dry up code 2015-10-13 16:35:22 -04:00
Thomas Fussell
c7c5eec2ab add more functionality for printing cells 2015-10-13 14:19:46 -04:00
Thomas Fussell
301e81d698 integrate value into cell, continue synchronizing with openpyxl 2.4 2015-10-13 13:56:07 -04:00
Thomas Fussell
77d6bbb41b fix precision on time to number, fix type guessing, fix long long on osx 2015-10-06 12:31:49 -04:00
Thomas Fussell
4001a47ec0 fix relative paths in relationships on round-trips. I really need to clean up relationship code 2015-10-06 10:32:52 -04:00
Thomas Fussell
69032289ac copy and paste fix from writer::write_workbook 2015-10-06 01:03:38 -04:00
Thomas Fussell
81a242dc71 Merge branch 'master' of github.com:tfussell/xlnt 2015-10-02 10:03:00 -04:00
Thomas Fussell
ffedc2cb33 literals should be long doubles to make float comparison exact 2015-10-02 10:02:54 -04:00
Thomas Fussell
effe0e9340 fix long longs on linux 2015-10-02 01:57:39 -04:00
Thomas Fussell
8dc7342137 should fix issue #9 2015-10-01 23:22:46 -04:00
Thomas Fussell
c03f7d28e4 begin synchronizing tests with openpyxl 2.4 branch, fix type guessing logic 2015-10-01 23:09:25 -04:00
Thomas Fussell
8f669c11db update copyright, add overloads for all int sizes, fix line ending in zip_file test 2015-10-01 18:14:42 -04:00
Thomas Fussell
5e6ae7ea40 xlsx writers might not add a spans attr for worksheet rows, use worksheet dimensions in this case. also correct some formula reading logic 2015-09-29 09:16:37 -04:00
Thomas Fussell
4c3e07bd96 miniz archive type is forward declared so move include into zip_file.cpp where it's needed 2015-09-29 00:38:00 -04:00
Thomas Fussell
cc1da90873 merge changes 2014-08-13 18:58:11 -04:00
Thomas Fussell
01e8937ddf change include style 2014-08-13 18:56:34 -04:00
Thomas Fussell
5ccc345f8c some changes 2014-08-01 16:46:54 -04:00
Thomas Fussell
7829e2968c fix weird merge artifact 2014-08-01 09:53:32 -04:00
Thomas Fussell
767b0708e2 merge 2014-08-01 09:51:28 -04:00
Thomas Fussell
57aa270f25 add new zip class to repo 2014-08-01 09:44:21 -04:00
Thomas Fussell
71e50ed70a fix for windows build 2014-07-29 18:20:11 -04:00
Thomas Fussell
ec1d9f7ecb fix clang warnings, update build script 2014-07-29 18:01:54 -04:00
Thomas Fussell
eb251f1e47 switch zlib to miniz, update documentation, update build system 2014-07-29 17:39:00 -04:00
Thomas Fussell
01b9a26510 actually produce a working spreadsheet now 2014-07-28 17:55:57 -04:00
Thomas Fussell
16f8c3223a continue synchronizing tests and start implementing styles 2014-07-26 16:19:15 -04:00
Thomas Fussell
c5967686ff implement remaining tests 2014-07-25 16:39:25 -04:00
Thomas Fussell
24fbb75a9e fix some things 2014-07-24 17:31:46 -04:00
Thomas Fussell
bb064532ad all tests pass now 2014-07-23 20:51:28 -04:00
Thomas Fussell
93bd3d9989 fix some things 2014-07-23 16:00:09 -04:00
Thomas Fussell
12cc2ab36b start doing number formats the right way 2014-07-23 09:19:35 -04:00
Thomas Fussell
7978ccf4a5 clean up comment handling, still a bug in assignment 2014-07-21 09:34:57 -04:00
Thomas Fussell
aec8b465d9 add support for column-major iteration of worksheet 2014-07-19 17:42:04 -04:00
Thomas Fussell
ac5e29b125 fix some things 2014-07-19 16:59:05 -04:00
Thomas Fussell
a7bb9f0e77 lots of fixes 2014-07-19 14:43:48 -04:00
Thomas Fussell
a87c144340 fix dates and props 2014-07-16 19:53:45 -04:00
Thomas Fussell
45b03c03ef minor fixes for gcc build 2014-06-18 15:12:44 -04:00
Thomas Fussell
4d62e0bb75 remove optimization, test_dump, and start fixing relationships 2014-06-15 13:06:47 -04:00
Thomas Fussell
463bc3a677 make tweaks for visual studio 2014 compiler 2014-06-15 12:16:34 -04:00
Thomas Fussell
65962951f1 start making reader/writer actually use package structure 2014-06-13 17:06:23 -04:00
Thomas Fussell
ff84734e2d fix problem from last commit 2014-06-13 15:05:24 -04:00
Thomas Fussell
6d1eb3b149 all tests pass now, except for some strange nullptr errors in test_read_date_value() 2014-06-12 17:04:37 -04:00
Thomas Fussell
a7ead4ee18 work on datetime functionality 2014-06-11 16:41:34 -04:00
Thomas Fussell
f9ba11672d add some new tests, break some things 2014-06-10 18:36:31 -04:00
Thomas Fussell
98f2c5f10a still fixing things 2014-06-10 17:12:15 -04:00
Thomas Fussell
05e2bf251b fix some things 2014-06-10 00:29:49 -04:00
Thomas Fussell
b2ddc13a95 fix some more tests 2014-06-07 11:49:19 -04:00
Thomas Fussell
0f923d3c12 start working through new tests 2014-06-05 17:42:15 -04:00
Thomas Fussell
89be485062 restructure to match openpyxl 2.1 2014-06-05 16:19:31 -04:00
Thomas Fussell
3c04a7b9d2 enabled more tests 2014-06-04 18:42:17 -04:00
Thomas Fussell
7edef82577 change a few things 2014-05-30 18:42:25 -04:00
Thomas Fussell
e92f1a624e moved all impl classes to separate headers 2014-05-29 20:52:14 -04:00
Thomas Fussell
9ef1a5ef25 fix build for linux 2014-05-21 19:17:56 -04:00
Thomas Fussell
ce720d5846 fix build on osx 2014-05-21 18:13:32 -04:00
Thomas Fussell
cf9f6f0ae9 hopefully the last major restructuring 2014-05-21 17:48:51 -04:00
Thomas Fussell
3e78b7e49b restructure project 2014-05-21 10:20:30 -04:00
Thomas Fussell
ab590549a3 most tests : fixed! 2014-05-19 20:47:15 -04:00
Thomas Fussell
dc1a80ebae fix some more things 2014-05-18 21:29:19 -04:00
Thomas Fussell
841a455497 4 tests to go 2014-05-16 11:22:21 -04:00
Thomas Fussell
4f8a0b7f0d fixed some more tests, finally making some progress 2014-05-16 02:03:05 -04:00
Thomas Fussell
9b2f1b7369 old fixes from last night 2014-05-16 00:10:28 -04:00
Thomas Fussell
a3789a99a1 fixes 2014-05-15 17:12:09 -04:00
Thomas Fussell
89e6de69aa fix build on osx 2014-05-14 22:07:23 -04:00
Thomas Fussell
e516a3aa11 a little cleanup 2014-05-14 18:48:18 -04:00
Thomas Fussell
2ae7286482 add back old test suite renamed 2014-05-14 18:33:38 -04:00
Thomas Fussell
6465bac5e4 almost finished 2014-05-14 18:31:48 -04:00
Thomas Fussell
411a735098 tests compile now, but still some functions undefined 2014-05-13 16:32:33 -04:00
Thomas Fussell
55246437ea almost finished implementing core api 2014-05-13 14:40:28 -04:00
Thomas Fussell
14cb4e88a4 fixed some more tests 2014-05-12 19:59:33 -04:00
Thomas Fussell
99d609ce3a enable more tests 2014-05-12 13:42:28 -04:00
Thomas Fussell
d80ba60b31 fix some more tests 2014-05-11 20:52:32 -04:00
Thomas Fussell
df49f332bf start working through cell tests 2014-05-11 11:58:53 -04:00
Thomas Fussell
d1d93866dd fix build to compile on osx 2014-05-11 10:46:43 -04:00
Thomas Fussell
913551920f restructure 2014-05-09 15:54:06 -04:00
Thomas Fussell
26892bf42b some changes 2014-05-08 15:32:12 -04:00
Thomas Fussell
d1337c48e4 some changes 2014-05-07 13:49:47 -04:00
Thomas Fussell
d646cfcaa1 initial commit 2014-05-06 17:28:38 -04:00