Commit Graph

178 Commits

Author SHA1 Message Date
Crzyrndm
d2d0c2ab55 Serialisation of sheetPr and printOptions elements 2018-06-24 14:02:01 +12:00
Crzyrndm
93323f334d Basic pageSetup persistence
-- NOTE: The struct page_setup doesn't currently reflect the attributes of the pageSetup element
2018-06-24 12:34:56 +12:00
Crzyrndm
4cfb74443c fixing build warnings 2018-06-23 22:43:11 +12:00
Crzyrndm
fe90c9d488 Fix build errors and warnings 2018-06-23 21:08:12 +12:00
Crzyrndm
5817ef5cf0 Add serialisation of worksheet phonetic properties 2018-06-23 12:15:15 +12:00
Crzyrndm
fc7c69a724 Base selection on Excel behaviour
-- sqref is a block of selected cells containing the active_cell (normally is just == active_cell)
-- active cell is the selected vell in this selection/view/pane
-- inactive selections use the top-left cell as the active_cell
2018-06-18 22:40:24 +12:00
Crzyrndm
6f13002ac6 set selection::sqref in freeze_panes
-- NOTE: It doesn't seem likely that these should be 'A1' in all cases (set to 'A1' because current tests demanded it). Purpose of this parameter needs clarification
-- NOTE: [xlnt::selection] needs appropriate ctor's once the purpose of the parameters can be clarified
2018-06-18 22:40:24 +12:00
Crzyrndm
4592b86746 Fix clear_row not clearing the row properties
-- worksheet_dimensions include rows with properties
2018-06-18 22:40:24 +12:00
Crzyrndm
04c0b4a1ca Fix issues with the worksheet "title" setter.
-- Resolves two test failures caused by a crash when setting the title to the existing value removing the sheet from the 'sheet_title_rel_id_map_'
-- added empty title check
2018-06-18 22:40:23 +12:00
Thomas Fussell
617f7a2525 improve hyperlinks and style round tripping 2018-03-21 09:03:37 -04:00
Thomas Fussell
410e73d594 work on hyperlinks, x14 extentions, other round tripping silliness 2018-03-16 21:21:16 -04:00
Thomas Fussell
2426215801 implement sheet view serialization 2018-03-14 20:12:07 -04:00
Thomas Fussell
0f0d3de75f implement sheetFormatPr, x14ac:dyDescent, reordering workbook rels so sheets come first after insertions 2018-01-26 14:32:00 -05:00
Thomas Fussell
90633d0e8e copyright year bump (2018) 2018-01-22 09:38:48 -05:00
Thomas Fussell
a653a39544 reformat a little 2017-12-08 15:31:25 -05:00
Bernard Čupić
7cae301039 Added forgotten implementataion of const cell operator[std::size_t cell_index] const 2017-11-06 16:15:38 +01:00
Thomas Fussell
470c655df6 fix empty row height/cell width, #235 2017-10-30 19:36:24 -04:00
Thomas Fussell
06b315b352 add interface to worksheet and range for clearing cells entirely, not just their values, for #232 2017-10-26 13:45:56 -04:00
Thomas Fussell
81812d6e29 implement sheet view selection consumption, closes #164 2017-09-13 09:36:42 -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
7d0cf59286 correct off-by-one error in range dimension calculation, closes #213 2017-09-08 20:47:10 -04:00
Thomas Fussell
716a81a19f optimize hot code paths 2017-09-08 19:08:38 -04:00
Thomas Fussell
49b84a83c7 define missing method, worksheet::clear_page_breaks(), closes #192 2017-08-18 20:58:44 -04:00
Thomas Fussell
d2be054b7c optimize shared strings and handle formula strings correctly 2017-05-10 08:44:25 -04:00
Thomas Fussell
b2a5110939 organize detail files, start wiring up encryption logic 2017-04-20 14:03:03 -04:00
Thomas Fussell
835e36d6ae initial commit withou cxxtest 2017-04-13 14:51:35 -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
4ca534a83a fix size_t to row_t/column_t::index_t conversion warning 2017-03-23 20:13:05 -04:00
Thomas Fussell
0d82aba640 improve 1d and 2d cell iteration for #135, including making empty cell skipping optional 2017-03-23 20:05:25 -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
3cfcc7246c clean up travis adding a build matrix 2017-03-22 21:41:00 -04:00
Thomas Fussell
b914b064b7 remove some more extraneous worksheet methods 2017-03-20 20:33:15 -04:00
Thomas Fussell
d8c9d14a98 clean up worksheet api 2017-03-20 20:17:09 -04:00
Thomas Fussell
f862de1ff7 fix clang warning from extraneous semicolon 2017-03-20 19:23:44 -04:00
Thomas Fussell
ea95c6d33b fix gcc warning from unused variable 2017-03-20 19:23:22 -04:00
Thomas Fussell
8f4c82dffd add batch formatting methods to range class 2017-03-19 14:22:29 -04: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
767d498dac separate crypto_helper into header file, fix lots of stuff 2017-02-17 23:11:06 -06:00
Thomas Fussell
571c0103b5 continue work on workbook metadata properties 2017-01-15 19:08:57 -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
34304fd9c7 define worksheet::add_row_properties, closes #97 2017-01-02 18:36:33 -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
e1157625a5 begin refining headers and footers, remove dependency on pugixml 2016-12-10 00:18:50 +00: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
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
846ea8e0d6 add overload to worksheet::get_cell which accepts a column and row 2016-11-19 23:44:28 -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
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
6d749aaa91 implement writing comments, still need to fix comment vml 2016-10-29 16:31:30 -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
eee47c267c fix bug in worksheet::set_title 2016-10-10 07:01:19 -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
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
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
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
4234a62b8b clean up api and do more testing 2016-08-01 18:33:43 -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
75dc7ebf26 get get_point_pos 2016-07-22 23:50:27 -04:00
Thomas Fussell
d1d9471e15 test opening bad files 2016-07-22 23:21:53 -04:00
Thomas Fussell
d3486bb986 improve constants 2016-07-22 20:26:02 -04:00
Thomas Fussell
c009278c60 clean up exceptions 2016-07-21 23:04:36 -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
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
a2814d3465 cover header_footer.hpp 2016-07-09 00:22:08 -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
9ae506c1ea move serialization classes to detail, recouple with pugixml (no reason to abstract) 2016-07-03 19:22:08 -04:00
Xpol Wan
933beab976 Fixes warnings about compare double to bool. 2016-06-29 17:23:43 +08:00
Thomas Fussell
c7bc216026 improve worksheet test coverage 2016-06-23 09:33:10 +01:00
Thomas Fussell
f28e09d9a3 finish testing page setup 2016-06-19 21:16:05 +01:00
Thomas Fussell
bc410d8835 uncomment test_reverse_column_major_iterators 2016-06-15 13:36:03 +01:00
Thomas Fussell
5d2c75014b improve range iterators and their tests 2016-06-15 12:45:05 +01:00
Thomas Fussell
23f65602de revert coverage calculation and work on coverage 2016-06-13 23:36:26 -04:00
Thomas Fussell
d9124a2b23 add missing header 2016-06-11 10:17: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
Xpol Wan
9f1edce3bc Add range worksheet::rows(int row_offset, int column_offset) const. 2016-05-26 10:55:50 +08:00
Thomas Fussell
31b546b1d5 general API improvements 2016-05-11 19:24:53 -04:00
Thomas Fussell
4d2c68a575 remove accidental commit of debugging test 2016-03-10 17:35:16 +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
e401e42bee use unambiguous constructor 2016-03-09 13:47:59 +08:00