sukoi26
99f20a014a
error what(): xl/sharedStrings.xml: error: duplicate attribute #290
2018-07-09 18:21:01 +02:00
Crzyrndm
a8fa6637fe
fix workbook::operator== always returning false, add tests for workbook::load
...
workbook::operator== was comparing the value of the raw pointer held by two std::unique_ptr's. By definition, this is always false in a well behaved program (if it's true, things go bang...). This then led to adding equality operators to nearly every other struct/class in xlnt to support workbook::operator==
workbook::load and the non-default ctors for loading data from a file are tested using the now functional equality operator
NOTE: a large number of copy ctors need updates/fixing. Many should be defaulted
2018-07-03 14:05:07 +12:00
Crzyrndm
688c8c7f33
add column_index to cell to be consistent with cell_reference
...
Issue #298
The consistency argument is a good one in my opinion
2018-07-03 11:10:47 +12:00
Crzyrndm
bb04205dac
workbook parameterised constructors
...
Issue #298
- all 4 are simply duplicating existing behaviour, but perhaps we can get a more optimal version in future
- istream ctor is intended as an extension point that can then be used to create free/static functions to work with any future data source (vector), while the path ctor is a convenience function for the common case (from file)
2018-07-02 21:33:27 +12:00
Crzyrndm
e0d62b0835
Cleanup from review
2018-06-26 20:32:59 +12:00
Crzyrndm
0325c19488
Cleanup
2018-06-25 23:17:21 +12:00
Crzyrndm
3d3a59012a
extLst element round tripped
2018-06-25 23:12:35 +12:00
Crzyrndm
4ff68319b0
Fix CI build warnings
2018-06-25 21:45:40 +12:00
Crzyrndm
8ba7f5b45d
default is not a contextual keyword
2018-06-25 21:41:25 +12:00
Crzyrndm
49bd0c8fb4
Fix warnings + CI compile error
2018-06-25 21:28:17 +12:00
Crzyrndm
840d1bcefc
Serialisation of extLst without namespace support
...
-- roundtripping namespaces requires modifications of the parser used for the entire worksheet as there does not appear to be a way to track the namespace changes without listening/registering for the event. This (ofcourse) breaks lots of other things...
2018-06-24 23:08:23 +12:00
Crzyrndm
a347d9c05d
ext_list parsing for worksheets
2018-06-24 21:25:58 +12:00
Crzyrndm
1c1d63498a
Parsing headerFotter block of test sheet correctly
2018-06-24 17:31:05 +12:00
Crzyrndm
d12d2e450b
std::to_string is not good fpr serialising doubles
...
-- it uses fixed 6dp, xlsx wants 15sf
-- stringstream with precision set to 15 serialises correctly
2018-06-24 14:29:56 +12:00
Crzyrndm
e8fcd49c0d
Add serialisation of "topLeftCell" sheetView attribute
2018-06-24 14:19:03 +12:00
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
7820ac548f
re-save custom_heights_widths.xlsx, add defaultColWidth sheet attribute
...
-- custom_heights was the only test sheet where the integral value was being saved with a trailing ".0"
-- Updated tests to expect the new values
-- added the new property "defaultColWidth"
2018-06-24 11:53:45 +12:00
Crzyrndm
884558fd15
Write numbers using a standard formatter (15sf to match excel)
2018-06-24 11:06:02 +12:00
Crzyrndm
f62e5fe5f7
Fix every 16th row (17, 33, ...) having data dropped
2018-06-24 10:20:30 +12:00
Crzyrndm
d81555dbae
Add "bestFit" column attribute serialisation
2018-06-24 10:13:27 +12:00
Crzyrndm
4cfb74443c
fixing build warnings
2018-06-23 22:43:11 +12:00
Crzyrndm
3eb06bac0d
serialisation of custom row format property added
2018-06-23 22:29:57 +12:00
Crzyrndm
fe90c9d488
Fix build errors and warnings
2018-06-23 21:08:12 +12:00
Crzyrndm
07ea740d11
Add the ext_list class for parsing extLst xml elements to/from
...
-- no tests as yet
2018-06-23 19:08:39 +12:00
Crzyrndm
fde3b90bda
implement overload of manifest::has_relationship(path, relation_id)
2018-06-23 13:19:34 +12:00
Crzyrndm
5817ef5cf0
Add serialisation of worksheet phonetic properties
2018-06-23 12:15:15 +12:00
Crzyrndm
5a14d7b9d1
suppress conversion warnings
...
-- tolower takes chars and returns chars, types are int because C only deals with ints
-- format parameter is size_t but there is no std parsing function that returns size_t. stoull is used instead as the widest alternative, and then the cast is applied to suppress the conversion warnings
2018-06-18 23:24:13 +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
b4e7832419
Fixes to cell hyper links
...
-- additional tests to cover both variants of the set function
-- additional tests to cover hyper links on cells with non-string data
-- modified hyper link set function to handle cells with non-string data
-- fixed test behaviour for a cell with no value (value is set to the string form of the link. Behaviour copied from Excel 2010)
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
e350a7734d
implement abspath and archid flags, fixes some serialization problems
2018-05-28 23:13:57 -04:00
Thomas Fussell
6eb16243ca
work on round-tripping for #230
2018-04-24 19:43:34 -04:00
Thomas Fussell
ec1584240c
specify relationship member namespace to fix compiler error, closes #268
2018-04-24 18:03:55 -04:00
Thomas Fussell
50850ffb8a
work on round-tripping for #230
2018-04-24 17:58:17 -04: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
Andrii Tkachenko
467dc860c6
Visual Studio 2015 build files for Win32/x64 configurations. Very first working version.
2018-02-14 06:22:33 +01:00
Andrii Tkachenko
403605a536
xLnt. shared string performance optimization.
2018-02-08 09:52:10 +01:00
Andrii Tkachenko
cb55735644
xLnt. rich_text operator less fixed.
2018-02-08 09:51:50 +01:00
Andrii Tkachenko
3246d602c2
xLnt. Implemented operator less for: rich_text, rich_text_run, color, font, optional.
2018-02-08 08:05:41 +01:00
Andrii Tkachenko
55cf7a2bed
xlnt. rich_text copy constructor.
2018-02-08 07:24:58 +01: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
44a8c8e79e
minor reformatting
2017-12-09 16:04:44 -05:00
Thomas Fussell
1c85188ec6
Merge branch 'dev' of https://github.com/sukoi26/xlnt into sukoi26-dev
2017-12-09 15:45:49 -05:00
Thomas Fussell
a653a39544
reformat a little
2017-12-08 15:31:25 -05:00
Thomas Fussell
182dea155b
Merge branch 'dev' of github.com:tfussell/xlnt into dev
2017-12-08 15:20:36 -05:00
Thomas Fussell
20c7d3437c
Merge pull request #248 from tlanc007/cellPropertyColors
...
custom_value_traits.hpp: pattern_fill from_string() ignores case
2017-12-08 14:37:24 -05:00
tal
b008eacd89
custom_value_traits.hpp: pattern_fill from_string() ignores case
...
Values like lightGray will match with lightgray. Unexpected inputs will
be ignored and return none.
Needs prama to clang to be happy.
2017-11-22 12:44:49 -07:00
TataMata
d0bacf548c
Reformatted source
...
Reformatted pull request to match the library formatting style.
2017-11-12 10:34:51 +01:00
fred.yan
383337ad45
cell_vector lost func "operator[]const"
2017-11-09 14:17:49 +08: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
sukoi26
4f07495abb
optimize latest commit missing a test
2017-11-06 14:12:08 +01:00
TataMata
b899c9db5c
Fix bug in cell style assingment
...
There was a bug introduced in version 1.2 in reading styles. As from the Office Open XML documentation:
2017-11-06 11:55:06 +01:00
sukoi26
caeadfc83c
optimize code empty row cell
2017-11-04 23:41:48 +01:00
sukoi26
4a3e711a1b
bug introduce by the commit continue work on #230 , improves style/xf handling
...
as the style exist it is rewritten in cellStyleXfs and cellXfs,
with the fillId test for format and style. remove the test and use only the format.
2017-11-04 18:12:38 +01:00
Aaron Bishop
0201f22237
fix const correctness error
2017-11-02 17:07:01 -04:00
Thomas Fussell
29abdfa702
Merge branch 'master' into dev
2017-10-30 19:44:32 -04: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
0e0bf0f8a1
continue work on #230 , improves style/xf handling
2017-10-26 12:54:54 -04:00
Alexandros Naskos
7f08c77a90
Empty row properties are now written correctly. Setting a row's height now also causes customHeight to be emitted.
2017-10-25 15:04:51 +03:00
Thomas Fussell
75de03745b
start fixing serialization for #230
2017-09-28 08:55:16 -04:00
Thomas Fussell
34270f2333
specify return type of lambda to prevent compiler error
2017-09-27 17:39:59 -04:00
Thomas Fussell
919c65ceea
Merge pull request #229 from downwash/master
...
Fix for issue #228 : Worksheet ID is not always unique
2017-09-27 17:32:40 -04:00
vervbe
c05b9f33c1
Fix for issue #228 : Worksheet ID is not always unique
...
- Worksheet ID now generated from the maximum of existing IDs
- Worksheet ID no longer copied from existing sheet
- Added tests
2017-09-26 08:33:06 +02:00
Thomas Fussell
4c2c7a5859
add missing header for std::tolower
2017-09-13 11:03:18 -04:00
Thomas Fussell
b2adee9fd3
implement upper case date/time handling, closes #221 , closes #222 , related to #220
2017-09-13 10:47:18 -04:00
Thomas Fussell
f27df9732c
add option to enable linking with static C runtime when compiling with MSVC, #214
2017-09-13 10:20:51 -04:00
Thomas Fussell
81812d6e29
implement sheet view selection consumption, closes #164
2017-09-13 09:36:42 -04:00
Thomas Fussell
9d71dda531
ensure only exceptions derived from xlnt::exception are thrown by library code plus some minor code cleanup, closes #163
2017-09-13 08:48:22 -04:00
Thomas Fussell
bc1e3656c7
Merge branch 'master' into dev
2017-09-12 16:22:36 -04:00
Henrique Santiago
ea5c741bfe
Parse readingOrder
2017-09-12 17:04:52 -03:00
Thomas Fussell
954f4b84cd
prevent exception on unhandled attributes
2017-09-10 09:36:53 -04:00
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
7d0cf59286
correct off-by-one error in range dimension calculation, closes #213
2017-09-08 20:47:10 -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
53d7dbb67e
install generated man page
2017-09-08 17:07:25 -04:00
Thomas Fussell
fff2feccd2
update licenses
2017-09-08 15:26:47 -04:00
Thomas Fussell
7ed14246b2
clean up cmake files and add d suffix to xlnt debug library, closes #214
2017-09-08 14:33:18 -04:00
Thomas Fussell
b0b43f6d8e
cast character correctly for std::toupper
2017-09-08 13:57:29 -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
25bb6bfadf
revert addition of NDEBUG for clang builds, come up with a better way to solve #179
2017-09-02 10:28:22 -04: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
5461538396
fix xwindow bug
...
fix xwindow bug
2017-08-27 14:13:18 +08:00
pebble2015
17ce83e612
fix xwindow bug
...
fix xwindow bug
2017-08-27 13:58:17 +08:00