mirror of
https://github.com/tfussell/xlnt.git
synced 2024-03-22 13:11:17 +08:00
remove unused modules and update documentation
This commit is contained in:
parent
340a4b3195
commit
ec6a010f8a
|
@ -258,12 +258,12 @@ PERLMOD_MAKEVAR_PREFIX =
|
||||||
# Configuration options related to the preprocessor
|
# Configuration options related to the preprocessor
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
ENABLE_PREPROCESSING = YES
|
ENABLE_PREPROCESSING = YES
|
||||||
MACRO_EXPANSION = NO
|
MACRO_EXPANSION = YES
|
||||||
EXPAND_ONLY_PREDEF = NO
|
EXPAND_ONLY_PREDEF = YES
|
||||||
SEARCH_INCLUDES = YES
|
SEARCH_INCLUDES = YES
|
||||||
INCLUDE_PATH =
|
INCLUDE_PATH = ../include
|
||||||
INCLUDE_FILE_PATTERNS =
|
INCLUDE_FILE_PATTERNS =
|
||||||
PREDEFINED =
|
PREDEFINED = XLNT_API=
|
||||||
EXPAND_AS_DEFINED =
|
EXPAND_AS_DEFINED =
|
||||||
SKIP_FUNCTION_MACROS = YES
|
SKIP_FUNCTION_MACROS = YES
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
|
|
|
@ -7,8 +7,7 @@ Cell Module
|
||||||
.. doxygenclass:: xlnt::cell_reference
|
.. doxygenclass:: xlnt::cell_reference
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::cell_type
|
.. doxygenenum:: xlnt::cell_type
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::cell
|
.. doxygenclass:: xlnt::cell
|
||||||
:members:
|
:members:
|
||||||
|
@ -24,7 +23,7 @@ Cell Module
|
||||||
.. doxygenstruct:: xlnt::column_hash
|
.. doxygenstruct:: xlnt::column_hash
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::text
|
.. doxygenclass:: xlnt::formatted_text
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::text_run
|
.. doxygenclass:: xlnt::text_run
|
||||||
|
|
|
@ -1,2 +0,0 @@
|
||||||
Charts Module
|
|
||||||
=============
|
|
|
@ -1,2 +0,0 @@
|
||||||
Charsheet Module
|
|
||||||
================
|
|
|
@ -1,5 +0,0 @@
|
||||||
Drawing Module
|
|
||||||
==============
|
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::drawing
|
|
||||||
:members:
|
|
|
@ -1,8 +0,0 @@
|
||||||
Formula Module
|
|
||||||
==============
|
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::tokenizer
|
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::translator
|
|
||||||
:members:
|
|
|
@ -1,26 +1,11 @@
|
||||||
Packaging Module
|
Packaging Module
|
||||||
================
|
================
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::app_properties
|
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::default_type
|
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::document_properties
|
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::manifest
|
.. doxygenclass:: xlnt::manifest
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::override_type
|
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::relationship
|
.. doxygenclass:: xlnt::relationship
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
.. doxygenstruct:: xlnt::zip_info
|
.. doxygenclass:: xlnt::uri
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::zip_file
|
|
||||||
:members:
|
:members:
|
||||||
|
|
|
@ -1,21 +1,10 @@
|
||||||
xlnt Library
|
|
||||||
============
|
|
||||||
|
|
||||||
.. doxygenenum:: xlnt::limit_style
|
|
||||||
.. doxygenvariable:: xlnt::LimitStyle
|
|
||||||
|
|
||||||
Library Modules
|
Library Modules
|
||||||
===============
|
===============
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
|
|
||||||
xlnt.cell
|
xlnt.cell
|
||||||
xlnt.chart
|
|
||||||
xlnt.chartsheet
|
|
||||||
xlnt.drawing
|
|
||||||
xlnt.formula
|
|
||||||
xlnt.packaging
|
xlnt.packaging
|
||||||
xlnt.serialization
|
|
||||||
xlnt.styles
|
xlnt.styles
|
||||||
xlnt.utils
|
xlnt.utils
|
||||||
xlnt.workbook
|
xlnt.workbook
|
||||||
|
|
|
@ -4,11 +4,7 @@ Styles Module
|
||||||
.. doxygenclass:: xlnt::alignment
|
.. doxygenclass:: xlnt::alignment
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::base_format
|
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenenum:: xlnt::border_style
|
.. doxygenenum:: xlnt::border_style
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::border
|
.. doxygenclass:: xlnt::border
|
||||||
:members:
|
:members:
|
||||||
|
@ -17,7 +13,6 @@ Styles Module
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
.. doxygenenum:: xlnt::diagonal_direction
|
.. doxygenenum:: xlnt::diagonal_direction
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::fill
|
.. doxygenclass:: xlnt::fill
|
||||||
:members:
|
:members:
|
||||||
|
@ -29,7 +24,6 @@ Styles Module
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
.. doxygenenum:: xlnt::horizontal_alignment
|
.. doxygenenum:: xlnt::horizontal_alignment
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::number_format
|
.. doxygenclass:: xlnt::number_format
|
||||||
:members:
|
:members:
|
||||||
|
@ -37,11 +31,7 @@ Styles Module
|
||||||
.. doxygenclass:: xlnt::protection
|
.. doxygenclass:: xlnt::protection
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::side
|
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::style
|
.. doxygenclass:: xlnt::style
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
.. doxygenenum:: xlnt::vertical_alignment
|
.. doxygenenum:: xlnt::vertical_alignment
|
||||||
:members:
|
|
||||||
|
|
|
@ -1,46 +1,54 @@
|
||||||
Utilities Module
|
Utilities Module
|
||||||
================
|
================
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::attribute_error
|
.. doxygenclass:: xlnt::exception
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
.. doxygenenum:: xlnt::calendar
|
.. doxygenclass:: xlnt::invalid_parameter
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::cell_coordinates_error
|
.. doxygenclass:: xlnt::invalid_sheet_title
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::column_string_index_error
|
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::data_type_error
|
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenstruct:: xlnt::date
|
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenstruct:: xlnt::datetime
|
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::illegal_character_error
|
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::invalid_file_error
|
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::key_error
|
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::missing_number_format
|
.. doxygenclass:: xlnt::missing_number_format
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::named_range_error
|
.. doxygenclass:: xlnt::invalid_file
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::read_only_workbook_error
|
.. doxygenclass:: xlnt::illegal_character
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::sheet_title_error
|
.. doxygenclass:: xlnt::invalid_data_type
|
||||||
|
:members:
|
||||||
|
|
||||||
|
.. doxygenclass:: xlnt::invalid_column_string_index
|
||||||
|
:members:
|
||||||
|
|
||||||
|
.. doxygenclass:: xlnt::invalid_cell_reference
|
||||||
|
:members:
|
||||||
|
|
||||||
|
.. doxygenclass:: xlnt::invalid_attribute
|
||||||
|
:members:
|
||||||
|
|
||||||
|
.. doxygenclass:: xlnt::key_not_found
|
||||||
|
:members:
|
||||||
|
|
||||||
|
.. doxygenclass:: xlnt::no_visible_worksheets
|
||||||
|
:members:
|
||||||
|
|
||||||
|
.. doxygenclass:: xlnt::unhandled_switch_case
|
||||||
|
:members:
|
||||||
|
|
||||||
|
.. doxygenclass:: xlnt::unsupported
|
||||||
|
:members:
|
||||||
|
|
||||||
|
.. doxygenenum:: xlnt::calendar
|
||||||
|
|
||||||
|
.. doxygenstruct:: xlnt::date
|
||||||
|
:members:
|
||||||
|
|
||||||
|
.. doxygenstruct:: xlnt::datetime
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
.. doxygenstruct:: xlnt::time
|
.. doxygenstruct:: xlnt::time
|
||||||
|
@ -52,5 +60,9 @@ Utilities Module
|
||||||
.. doxygenclass:: xlnt::utf8string
|
.. doxygenclass:: xlnt::utf8string
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::value_error
|
.. doxygenclass:: xlnt::optional
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
|
.. doxygenclass:: xlnt::path
|
||||||
|
:members:
|
||||||
|
|
||||||
|
|
|
@ -26,13 +26,10 @@ Worksheet Module
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
.. doxygenenum:: xlnt::major_order
|
.. doxygenenum:: xlnt::major_order
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenenum:: xlnt::orientation
|
.. doxygenenum:: xlnt::orientation
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenenum:: xlnt::page_break
|
.. doxygenenum:: xlnt::page_break
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::page_margins
|
.. doxygenclass:: xlnt::page_margins
|
||||||
:members:
|
:members:
|
||||||
|
@ -44,7 +41,6 @@ Worksheet Module
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
.. doxygenenum:: xlnt::paper_size
|
.. doxygenenum:: xlnt::paper_size
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::range_iterator
|
.. doxygenclass:: xlnt::range_iterator
|
||||||
:members:
|
:members:
|
||||||
|
@ -65,7 +61,6 @@ Worksheet Module
|
||||||
:members:
|
:members:
|
||||||
|
|
||||||
.. doxygenenum:: xlnt::sheet_state
|
.. doxygenenum:: xlnt::sheet_state
|
||||||
:members:
|
|
||||||
|
|
||||||
.. doxygenclass:: xlnt::sheet_view
|
.. doxygenclass:: xlnt::sheet_view
|
||||||
:members:
|
:members:
|
||||||
|
|
|
@ -45,6 +45,7 @@ extensions = [
|
||||||
# Breathe extension variables
|
# Breathe extension variables
|
||||||
breathe_projects = { "xlnt" : "doxyxml/" }
|
breathe_projects = { "xlnt" : "doxyxml/" }
|
||||||
breathe_default_project = "xlnt"
|
breathe_default_project = "xlnt"
|
||||||
|
breathe_doxygen_config_options = {'EXCLUDE_SYMBOLS': 'XLNT_API'}
|
||||||
|
|
||||||
# Add any paths that contain templates here, relative to this directory.
|
# Add any paths that contain templates here, relative to this directory.
|
||||||
templates_path = ['_templates']
|
templates_path = ['_templates']
|
||||||
|
|
|
@ -124,13 +124,13 @@ Summary of Features
|
||||||
Sample code:
|
Sample code:
|
||||||
++++++++++++
|
++++++++++++
|
||||||
|
|
||||||
.. literalinclude:: /samples/sample.cpp
|
.. literalinclude:: ../samples/sample.cpp
|
||||||
|
|
||||||
|
|
||||||
How to Contribute Code
|
How to Contribute Code
|
||||||
----------------------
|
----------------------
|
||||||
|
|
||||||
See :ref:`development`
|
See `Information For Developers`_
|
||||||
|
|
||||||
Installation
|
Installation
|
||||||
------------
|
------------
|
||||||
|
|
|
@ -415,15 +415,15 @@ public:
|
||||||
/// </summary>
|
/// </summary>
|
||||||
const worksheet get_worksheet() const;
|
const worksheet get_worksheet() const;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Return the workbook of the worksheet that owns this cell.
|
/// Return the workbook of the worksheet that owns this cell.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
workbook &get_workbook();
|
workbook &get_workbook();
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Return the workbook of the worksheet that owns this cell.
|
/// Return the workbook of the worksheet that owns this cell.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
const workbook &get_workbook() const;
|
const workbook &get_workbook() const;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Shortcut to return the base date of the parent workbook.
|
/// Shortcut to return the base date of the parent workbook.
|
||||||
|
@ -481,19 +481,6 @@ public:
|
||||||
/// </summary>
|
/// </summary>
|
||||||
bool operator==(std::nullptr_t) const;
|
bool operator==(std::nullptr_t) const;
|
||||||
|
|
||||||
// friend operators, so we can put cell on either side of comparisons with other types
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Return true if this cell is uninitialized.
|
|
||||||
/// </summary>
|
|
||||||
friend XLNT_API bool operator==(std::nullptr_t, const cell &cell);
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Convenience function for writing cell to an ostream.
|
|
||||||
/// Uses cell::to_string() internally.
|
|
||||||
/// </summary>
|
|
||||||
friend XLNT_API std::ostream &operator<<(std::ostream &stream, const xlnt::cell &cell);
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
// make these friends so they can use the private constructor
|
// make these friends so they can use the private constructor
|
||||||
friend class style;
|
friend class style;
|
||||||
|
@ -530,4 +517,15 @@ private:
|
||||||
detail::cell_impl *d_;
|
detail::cell_impl *d_;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Return true if this cell is uninitialized.
|
||||||
|
/// </summary>
|
||||||
|
XLNT_API bool operator==(std::nullptr_t, const cell &cell);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Convenience function for writing cell to an ostream.
|
||||||
|
/// Uses cell::to_string() internally.
|
||||||
|
/// </summary>
|
||||||
|
XLNT_API std::ostream &operator<<(std::ostream &stream, const xlnt::cell &cell);
|
||||||
|
|
||||||
} // namespace xlnt
|
} // namespace xlnt
|
||||||
|
|
|
@ -40,6 +40,9 @@ class range_reference;
|
||||||
/// </summary>
|
/// </summary>
|
||||||
struct XLNT_API cell_reference_hash
|
struct XLNT_API cell_reference_hash
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
std::size_t operator()(const cell_reference &k) const;
|
std::size_t operator()(const cell_reference &k) const;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -41,11 +41,14 @@ using row_t = std::uint32_t;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Columns can be referred to as a string A,B,...Z,AA,AB,..,ZZ,AAA,...,ZZZ
|
/// Columns can be referred to as a string A,B,...Z,AA,AB,..,ZZ,AAA,...,ZZZ
|
||||||
/// or as a 1-indexed index. This class encapsulates both of these forms of
|
/// or as a 1-indexed index. This class encapsulates both of these forms of
|
||||||
/// column referencing and allows for convertions between them.
|
/// column referencing and allows for conversions between them.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
class XLNT_API column_t
|
class XLNT_API column_t
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
using index_t = std::uint32_t;
|
using index_t = std::uint32_t;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -315,6 +318,9 @@ public:
|
||||||
/// </summary>
|
/// </summary>
|
||||||
struct XLNT_API column_hash
|
struct XLNT_API column_hash
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
std::size_t operator()(const column_t &k) const;
|
std::size_t operator()(const column_t &k) const;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -322,15 +328,20 @@ struct XLNT_API column_hash
|
||||||
|
|
||||||
namespace std {
|
namespace std {
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Template specialization to allow xlnt::column_t to be used as a key in a std container.
|
||||||
|
/// </summary>
|
||||||
template <>
|
template <>
|
||||||
struct hash<xlnt::column_t>
|
struct hash<xlnt::column_t>
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
size_t operator()(const xlnt::column_t &k) const
|
size_t operator()(const xlnt::column_t &k) const
|
||||||
{
|
{
|
||||||
|
static xlnt::column_hash hasher;
|
||||||
return hasher(k);
|
return hasher(k);
|
||||||
}
|
}
|
||||||
|
|
||||||
xlnt::column_hash hasher;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace std
|
} // namespace std
|
||||||
|
|
|
@ -1,34 +0,0 @@
|
||||||
// Copyright (c) 2014-2016 Thomas Fussell
|
|
||||||
// Copyright (c) 2010-2015 openpyxl
|
|
||||||
//
|
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
// of this software and associated documentation files (the "Software"), to deal
|
|
||||||
// in the Software without restriction, including without limitation the rights
|
|
||||||
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
// copies of the Software, and to permit persons to whom the Software is
|
|
||||||
// furnished to do so, subject to the following conditions:
|
|
||||||
//
|
|
||||||
// The above copyright notice and this permission notice shall be included in
|
|
||||||
// all copies or substantial portions of the Software.
|
|
||||||
//
|
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, WRISING FROM,
|
|
||||||
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
||||||
// THE SOFTWARE
|
|
||||||
//
|
|
||||||
// @license: http://www.opensource.org/licenses/mit-license.php
|
|
||||||
// @author: see AUTHORS file
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include <xlnt/xlnt_config.hpp>
|
|
||||||
|
|
||||||
namespace xlnt {
|
|
||||||
|
|
||||||
class XLNT_API axis
|
|
||||||
{
|
|
||||||
};
|
|
||||||
|
|
||||||
} // namespace xlnt
|
|
|
@ -1,34 +0,0 @@
|
||||||
// Copyright (c) 2014-2016 Thomas Fussell
|
|
||||||
// Copyright (c) 2010-2015 openpyxl
|
|
||||||
//
|
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
// of this software and associated documentation files (the "Software"), to deal
|
|
||||||
// in the Software without restriction, including without limitation the rights
|
|
||||||
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
// copies of the Software, and to permit persons to whom the Software is
|
|
||||||
// furnished to do so, subject to the following conditions:
|
|
||||||
//
|
|
||||||
// The above copyright notice and this permission notice shall be included in
|
|
||||||
// all copies or substantial portions of the Software.
|
|
||||||
//
|
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, WRISING FROM,
|
|
||||||
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
||||||
// THE SOFTWARE
|
|
||||||
//
|
|
||||||
// @license: http://www.opensource.org/licenses/mit-license.php
|
|
||||||
// @author: see AUTHORS file
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include <xlnt/xlnt_config.hpp>
|
|
||||||
|
|
||||||
namespace xlnt {
|
|
||||||
|
|
||||||
class XLNT_API bar_chart
|
|
||||||
{
|
|
||||||
};
|
|
||||||
|
|
||||||
} // namespace xlnt
|
|
|
@ -1,34 +0,0 @@
|
||||||
// Copyright (c) 2014-2016 Thomas Fussell
|
|
||||||
// Copyright (c) 2010-2015 openpyxl
|
|
||||||
//
|
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
// of this software and associated documentation files (the "Software"), to deal
|
|
||||||
// in the Software without restriction, including without limitation the rights
|
|
||||||
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
// copies of the Software, and to permit persons to whom the Software is
|
|
||||||
// furnished to do so, subject to the following conditions:
|
|
||||||
//
|
|
||||||
// The above copyright notice and this permission notice shall be included in
|
|
||||||
// all copies or substantial portions of the Software.
|
|
||||||
//
|
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, WRISING FROM,
|
|
||||||
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
||||||
// THE SOFTWARE
|
|
||||||
//
|
|
||||||
// @license: http://www.opensource.org/licenses/mit-license.php
|
|
||||||
// @author: see AUTHORS file
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include <xlnt/xlnt_config.hpp>
|
|
||||||
|
|
||||||
namespace xlnt {
|
|
||||||
|
|
||||||
class XLNT_API chart
|
|
||||||
{
|
|
||||||
};
|
|
||||||
|
|
||||||
} // namespace xlnt
|
|
|
@ -1,34 +0,0 @@
|
||||||
// Copyright (c) 2014-2016 Thomas Fussell
|
|
||||||
// Copyright (c) 2010-2015 openpyxl
|
|
||||||
//
|
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
// of this software and associated documentation files (the "Software"), to deal
|
|
||||||
// in the Software without restriction, including without limitation the rights
|
|
||||||
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
// copies of the Software, and to permit persons to whom the Software is
|
|
||||||
// furnished to do so, subject to the following conditions:
|
|
||||||
//
|
|
||||||
// The above copyright notice and this permission notice shall be included in
|
|
||||||
// all copies or substantial portions of the Software.
|
|
||||||
//
|
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, WRISING FROM,
|
|
||||||
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
||||||
// THE SOFTWARE
|
|
||||||
//
|
|
||||||
// @license: http://www.opensource.org/licenses/mit-license.php
|
|
||||||
// @author: see AUTHORS file
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include <xlnt/xlnt_config.hpp>
|
|
||||||
|
|
||||||
namespace xlnt {
|
|
||||||
|
|
||||||
class XLNT_API error_bar
|
|
||||||
{
|
|
||||||
};
|
|
||||||
|
|
||||||
} // namespace xlnt
|
|
|
@ -1,34 +0,0 @@
|
||||||
// Copyright (c) 2014-2016 Thomas Fussell
|
|
||||||
// Copyright (c) 2010-2015 openpyxl
|
|
||||||
//
|
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
// of this software and associated documentation files (the "Software"), to deal
|
|
||||||
// in the Software without restriction, including without limitation the rights
|
|
||||||
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
// copies of the Software, and to permit persons to whom the Software is
|
|
||||||
// furnished to do so, subject to the following conditions:
|
|
||||||
//
|
|
||||||
// The above copyright notice and this permission notice shall be included in
|
|
||||||
// all copies or substantial portions of the Software.
|
|
||||||
//
|
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, WRISING FROM,
|
|
||||||
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
||||||
// THE SOFTWARE
|
|
||||||
//
|
|
||||||
// @license: http://www.opensource.org/licenses/mit-license.php
|
|
||||||
// @author: see AUTHORS file
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include <xlnt/xlnt_config.hpp>
|
|
||||||
|
|
||||||
namespace xlnt {
|
|
||||||
|
|
||||||
class XLNT_API graph_chart
|
|
||||||
{
|
|
||||||
};
|
|
||||||
|
|
||||||
} // namespace xlnt
|
|
|
@ -1,34 +0,0 @@
|
||||||
// Copyright (c) 2014-2016 Thomas Fussell
|
|
||||||
// Copyright (c) 2010-2015 openpyxl
|
|
||||||
//
|
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
// of this software and associated documentation files (the "Software"), to deal
|
|
||||||
// in the Software without restriction, including without limitation the rights
|
|
||||||
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
// copies of the Software, and to permit persons to whom the Software is
|
|
||||||
// furnished to do so, subject to the following conditions:
|
|
||||||
//
|
|
||||||
// The above copyright notice and this permission notice shall be included in
|
|
||||||
// all copies or substantial portions of the Software.
|
|
||||||
//
|
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, WRISING FROM,
|
|
||||||
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
||||||
// THE SOFTWARE
|
|
||||||
//
|
|
||||||
// @license: http://www.opensource.org/licenses/mit-license.php
|
|
||||||
// @author: see AUTHORS file
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include <xlnt/xlnt_config.hpp>
|
|
||||||
|
|
||||||
namespace xlnt {
|
|
||||||
|
|
||||||
class XLNT_API legend
|
|
||||||
{
|
|
||||||
};
|
|
||||||
|
|
||||||
} // namespace xlnt
|
|
|
@ -1,34 +0,0 @@
|
||||||
// Copyright (c) 2014-2016 Thomas Fussell
|
|
||||||
// Copyright (c) 2010-2015 openpyxl
|
|
||||||
//
|
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
// of this software and associated documentation files (the "Software"), to deal
|
|
||||||
// in the Software without restriction, including without limitation the rights
|
|
||||||
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
// copies of the Software, and to permit persons to whom the Software is
|
|
||||||
// furnished to do so, subject to the following conditions:
|
|
||||||
//
|
|
||||||
// The above copyright notice and this permission notice shall be included in
|
|
||||||
// all copies or substantial portions of the Software.
|
|
||||||
//
|
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, WRISING FROM,
|
|
||||||
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
||||||
// THE SOFTWARE
|
|
||||||
//
|
|
||||||
// @license: http://www.opensource.org/licenses/mit-license.php
|
|
||||||
// @author: see AUTHORS file
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include <xlnt/xlnt_config.hpp>
|
|
||||||
|
|
||||||
namespace xlnt {
|
|
||||||
|
|
||||||
class XLNT_API line_chart
|
|
||||||
{
|
|
||||||
};
|
|
||||||
|
|
||||||
} // namespace xlnt
|
|
|
@ -1,34 +0,0 @@
|
||||||
// Copyright (c) 2014-2016 Thomas Fussell
|
|
||||||
// Copyright (c) 2010-2015 openpyxl
|
|
||||||
//
|
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
// of this software and associated documentation files (the "Software"), to deal
|
|
||||||
// in the Software without restriction, including without limitation the rights
|
|
||||||
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
// copies of the Software, and to permit persons to whom the Software is
|
|
||||||
// furnished to do so, subject to the following conditions:
|
|
||||||
//
|
|
||||||
// The above copyright notice and this permission notice shall be included in
|
|
||||||
// all copies or substantial portions of the Software.
|
|
||||||
//
|
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, WRISING FROM,
|
|
||||||
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
||||||
// THE SOFTWARE
|
|
||||||
//
|
|
||||||
// @license: http://www.opensource.org/licenses/mit-license.php
|
|
||||||
// @author: see AUTHORS file
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include <xlnt/xlnt_config.hpp>
|
|
||||||
|
|
||||||
namespace xlnt {
|
|
||||||
|
|
||||||
class XLNT_API pie_chart
|
|
||||||
{
|
|
||||||
};
|
|
||||||
|
|
||||||
} // namespace xlnt
|
|
|
@ -1,34 +0,0 @@
|
||||||
// Copyright (c) 2014-2016 Thomas Fussell
|
|
||||||
// Copyright (c) 2010-2015 openpyxl
|
|
||||||
//
|
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
// of this software and associated documentation files (the "Software"), to deal
|
|
||||||
// in the Software without restriction, including without limitation the rights
|
|
||||||
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
// copies of the Software, and to permit persons to whom the Software is
|
|
||||||
// furnished to do so, subject to the following conditions:
|
|
||||||
//
|
|
||||||
// The above copyright notice and this permission notice shall be included in
|
|
||||||
// all copies or substantial portions of the Software.
|
|
||||||
//
|
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, WRISING FROM,
|
|
||||||
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
||||||
// THE SOFTWARE
|
|
||||||
//
|
|
||||||
// @license: http://www.opensource.org/licenses/mit-license.php
|
|
||||||
// @author: see AUTHORS file
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include <xlnt/xlnt_config.hpp>
|
|
||||||
|
|
||||||
namespace xlnt {
|
|
||||||
|
|
||||||
class XLNT_API scatter_chart
|
|
||||||
{
|
|
||||||
};
|
|
||||||
|
|
||||||
} // namespace xlnt
|
|
|
@ -1,34 +0,0 @@
|
||||||
// Copyright (c) 2014-2016 Thomas Fussell
|
|
||||||
// Copyright (c) 2010-2015 openpyxl
|
|
||||||
//
|
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
// of this software and associated documentation files (the "Software"), to deal
|
|
||||||
// in the Software without restriction, including without limitation the rights
|
|
||||||
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
// copies of the Software, and to permit persons to whom the Software is
|
|
||||||
// furnished to do so, subject to the following conditions:
|
|
||||||
//
|
|
||||||
// The above copyright notice and this permission notice shall be included in
|
|
||||||
// all copies or substantial portions of the Software.
|
|
||||||
//
|
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, WRISING FROM,
|
|
||||||
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
||||||
// THE SOFTWARE
|
|
||||||
//
|
|
||||||
// @license: http://www.opensource.org/licenses/mit-license.php
|
|
||||||
// @author: see AUTHORS file
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include <xlnt/xlnt_config.hpp>
|
|
||||||
|
|
||||||
namespace xlnt {
|
|
||||||
|
|
||||||
class XLNT_API series
|
|
||||||
{
|
|
||||||
};
|
|
||||||
|
|
||||||
} // namespace xlnt
|
|
|
@ -1,44 +0,0 @@
|
||||||
// Copyright (c) 2014-2016 Thomas Fussell
|
|
||||||
// Copyright (c) 2010-2015 openpyxl
|
|
||||||
//
|
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
// of this software and associated documentation files (the "Software"), to deal
|
|
||||||
// in the Software without restriction, including without limitation the rights
|
|
||||||
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
// copies of the Software, and to permit persons to whom the Software is
|
|
||||||
// furnished to do so, subject to the following conditions:
|
|
||||||
//
|
|
||||||
// The above copyright notice and this permission notice shall be included in
|
|
||||||
// all copies or substantial portions of the Software.
|
|
||||||
//
|
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, WRISING FROM,
|
|
||||||
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
||||||
// THE SOFTWARE
|
|
||||||
//
|
|
||||||
// @license: http://www.opensource.org/licenses/mit-license.php
|
|
||||||
// @author: see AUTHORS file
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include <xlnt/xlnt_config.hpp>
|
|
||||||
|
|
||||||
namespace xlnt {
|
|
||||||
|
|
||||||
class worksheet;
|
|
||||||
struct drawing_struct;
|
|
||||||
|
|
||||||
class XLNT_API drawing
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
drawing();
|
|
||||||
|
|
||||||
private:
|
|
||||||
friend class worksheet;
|
|
||||||
drawing(drawing_struct *root);
|
|
||||||
drawing_struct *root_;
|
|
||||||
};
|
|
||||||
|
|
||||||
} // namespace xlnt
|
|
|
@ -1,61 +0,0 @@
|
||||||
From ewbachtal@ewbi.com Fri Apr 3 11:00:25 2015
|
|
||||||
Date: Fri, 3 Apr 2015 07:58:55 -0700
|
|
||||||
From: Eric W. Bachtal <ewbachtal@ewbi.com>
|
|
||||||
To: 'Paul Harrington' <phrrngtn@panix.com>
|
|
||||||
Subject: RE: [pycel] re-license the parser/tokenizer under a license suitable for incorporation into openpyxl (#11) (fwd)
|
|
||||||
|
|
||||||
Hi Paul,
|
|
||||||
|
|
||||||
I can't speak for Dirk's wishes regarding his Python implementation, but I'm
|
|
||||||
fine with my original JavaScript or C# Excel formula parser code being
|
|
||||||
released with a BSD/MIT license, as long as proper attribution is provided
|
|
||||||
and there's a clear indication that the software is provided "as is",
|
|
||||||
without warranty of any kind.
|
|
||||||
|
|
||||||
Good luck!
|
|
||||||
|
|
||||||
ewb
|
|
||||||
|
|
||||||
425 241 2505
|
|
||||||
|
|
||||||
|
|
||||||
-----Original Message-----
|
|
||||||
From: Paul Harrington [mailto:phrrngtn@panix.com]
|
|
||||||
Sent: Friday, April 3, 2015 7:19 AM
|
|
||||||
To: info@ewbi.com
|
|
||||||
Subject: Re: [pycel] re-license the parser/tokenizer under a license
|
|
||||||
suitable for incorporation into openpyxl (#11) (fwd)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Hi, I was wondering if you would be OK with the parser (specifically the
|
|
||||||
Python implementation) being released with an BSD/MIT license?
|
|
||||||
|
|
||||||
thanks for the implementation!
|
|
||||||
|
|
||||||
pjjH
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
---------- Forwarded message ----------
|
|
||||||
Date: Fri, 03 Apr 2015 06:26:39 -0700
|
|
||||||
From: Dirk Gorissen <notifications@github.com>
|
|
||||||
Reply-To: dgorissen/pycel
|
|
||||||
|
|
||||||
<reply+000100759cdf9fe5298cea83dabb029e82bc98754c9d7df892cf000000011136570f9
|
|
||||||
2a169ce03ee327f@reply.github.com>
|
|
||||||
To: dgorissen/pycel <pycel@noreply.github.com>
|
|
||||||
Cc: Paul Harrington <phrrngtn@panix.com>
|
|
||||||
Subject: Re: [pycel] re-license the parser/tokenizer under a license
|
|
||||||
suitable
|
|
||||||
for incorporation into openpyxl (#11)
|
|
||||||
|
|
||||||
I did not write the tokenizing/parser code and don't hold the copyright to
|
|
||||||
it.
|
|
||||||
Eric did and I just applied a small patch and integrated it. See the header
|
|
||||||
of tokenizer.py.
|
|
||||||
|
|
||||||
---
|
|
||||||
Reply to this email directly or view it on GitHub:
|
|
||||||
https://github.com/dgorissen/pycel/issues/11#issuecomment-89287122
|
|
|
@ -1,34 +0,0 @@
|
||||||
// Copyright (c) 2014-2016 Thomas Fussell
|
|
||||||
// Copyright (c) 2010-2015 openpyxl
|
|
||||||
//
|
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
// of this software and associated documentation files (the "Software"), to deal
|
|
||||||
// in the Software without restriction, including without limitation the rights
|
|
||||||
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
// copies of the Software, and to permit persons to whom the Software is
|
|
||||||
// furnished to do so, subject to the following conditions:
|
|
||||||
//
|
|
||||||
// The above copyright notice and this permission notice shall be included in
|
|
||||||
// all copies or substantial portions of the Software.
|
|
||||||
//
|
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, WRISING FROM,
|
|
||||||
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
||||||
// THE SOFTWARE
|
|
||||||
//
|
|
||||||
// @license: http://www.opensource.org/licenses/mit-license.php
|
|
||||||
// @author: see AUTHORS file
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include <xlnt/xlnt_config.hpp>
|
|
||||||
|
|
||||||
namespace xlnt {
|
|
||||||
|
|
||||||
class XLNT_API known_formulae
|
|
||||||
{
|
|
||||||
};
|
|
||||||
|
|
||||||
} // namespace xlnt
|
|
|
@ -1,34 +0,0 @@
|
||||||
// Copyright (c) 2014-2016 Thomas Fussell
|
|
||||||
// Copyright (c) 2010-2015 openpyxl
|
|
||||||
//
|
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
// of this software and associated documentation files (the "Software"), to deal
|
|
||||||
// in the Software without restriction, including without limitation the rights
|
|
||||||
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
// copies of the Software, and to permit persons to whom the Software is
|
|
||||||
// furnished to do so, subject to the following conditions:
|
|
||||||
//
|
|
||||||
// The above copyright notice and this permission notice shall be included in
|
|
||||||
// all copies or substantial portions of the Software.
|
|
||||||
//
|
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, WRISING FROM,
|
|
||||||
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
||||||
// THE SOFTWARE
|
|
||||||
//
|
|
||||||
// @license: http://www.opensource.org/licenses/mit-license.php
|
|
||||||
// @author: see AUTHORS file
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include <xlnt/xlnt_config.hpp>
|
|
||||||
|
|
||||||
namespace xlnt {
|
|
||||||
|
|
||||||
class XLNT_API tokenizer
|
|
||||||
{
|
|
||||||
};
|
|
||||||
|
|
||||||
} // namespace xlnt
|
|
|
@ -1,60 +0,0 @@
|
||||||
// Copyright (c) 2014-2016 Thomas Fussell
|
|
||||||
// Copyright (c) 2010-2015 openpyxl
|
|
||||||
//
|
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
// of this software and associated documentation files (the "Software"), to deal
|
|
||||||
// in the Software without restriction, including without limitation the rights
|
|
||||||
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
// copies of the Software, and to permit persons to whom the Software is
|
|
||||||
// furnished to do so, subject to the following conditions:
|
|
||||||
//
|
|
||||||
// The above copyright notice and this permission notice shall be included in
|
|
||||||
// all copies or substantial portions of the Software.
|
|
||||||
//
|
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, WRISING FROM,
|
|
||||||
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
||||||
// THE SOFTWARE
|
|
||||||
//
|
|
||||||
// @license: http://www.opensource.org/licenses/mit-license.php
|
|
||||||
// @author: see AUTHORS file
|
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include <string>
|
|
||||||
#include <vector>
|
|
||||||
|
|
||||||
#include <xlnt/xlnt_config.hpp>
|
|
||||||
|
|
||||||
namespace xlnt {
|
|
||||||
|
|
||||||
class cell_reference;
|
|
||||||
class tokenizer;
|
|
||||||
|
|
||||||
class XLNT_API translator
|
|
||||||
{
|
|
||||||
translator(const std::string &formula, const cell_reference &ref);
|
|
||||||
|
|
||||||
std::vector<std::string> get_tokens();
|
|
||||||
|
|
||||||
static std::string translate_row(const std::string &row_str, int row_delta);
|
|
||||||
static std::string translate_col(const std::string &col_str, col_delta);
|
|
||||||
|
|
||||||
std::pair<std::string, std::string> strip_ws_name(const std::string &range_str);
|
|
||||||
|
|
||||||
void translate_range(const range_reference &range_ref);
|
|
||||||
void translate_formula(const cell_reference &dest);
|
|
||||||
|
|
||||||
private:
|
|
||||||
const std::string ROW_RANGE_RE;
|
|
||||||
const std::string COL_RANGE_RE;
|
|
||||||
const std::string CELL_REF_RE;
|
|
||||||
|
|
||||||
std::string formula_;
|
|
||||||
cell_reference reference_;
|
|
||||||
tokenizer tokenizer_;
|
|
||||||
};
|
|
||||||
|
|
||||||
} // namespace xlnt
|
|
|
@ -100,6 +100,9 @@ enum class XLNT_API relationship_type
|
||||||
class XLNT_API relationship
|
class XLNT_API relationship
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
using type = relationship_type;
|
using type = relationship_type;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
@ -36,13 +36,25 @@ namespace xlnt {
|
||||||
class XLNT_API indexed_color
|
class XLNT_API indexed_color
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
indexed_color(std::size_t index);
|
indexed_color(std::size_t index);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
std::size_t get_index() const;
|
std::size_t get_index() const;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
void set_index(std::size_t index);
|
void set_index(std::size_t index);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
std::size_t index_;
|
std::size_t index_;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -52,13 +64,25 @@ private:
|
||||||
class XLNT_API theme_color
|
class XLNT_API theme_color
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
theme_color(std::size_t index);
|
theme_color(std::size_t index);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
std::size_t get_index() const;
|
std::size_t get_index() const;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
void set_index(std::size_t index);
|
void set_index(std::size_t index);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
std::size_t index_;
|
std::size_t index_;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -68,27 +92,60 @@ private:
|
||||||
class XLNT_API rgb_color
|
class XLNT_API rgb_color
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
rgb_color(const std::string &hex_string);
|
rgb_color(const std::string &hex_string);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
rgb_color(std::uint8_t r, std::uint8_t g, std::uint8_t b, std::uint8_t a = 255);
|
rgb_color(std::uint8_t r, std::uint8_t g, std::uint8_t b, std::uint8_t a = 255);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
std::string get_hex_string() const;
|
std::string get_hex_string() const;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
std::uint8_t get_red() const;
|
std::uint8_t get_red() const;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
std::uint8_t get_green() const;
|
std::uint8_t get_green() const;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
std::uint8_t get_blue() const;
|
std::uint8_t get_blue() const;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
std::uint8_t get_alpha() const;
|
std::uint8_t get_alpha() const;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
std::array<std::uint8_t, 3> get_rgb() const;
|
std::array<std::uint8_t, 3> get_rgb() const;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
std::array<std::uint8_t, 4> get_rgba() const;
|
std::array<std::uint8_t, 4> get_rgba() const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
static std::array<std::uint8_t, 4> decode_hex_string(const std::string &hex_string);
|
static std::array<std::uint8_t, 4> decode_hex_string(const std::string &hex_string);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
std::array<std::uint8_t, 4> rgba_;
|
std::array<std::uint8_t, 4> rgba_;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -106,7 +163,7 @@ public:
|
||||||
indexed,
|
indexed,
|
||||||
theme,
|
theme,
|
||||||
rgb,
|
rgb,
|
||||||
auto_
|
auto_
|
||||||
};
|
};
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
@ -333,7 +333,7 @@ public:
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
unsupported(const std::string &message);
|
unsupported(const std::string &message);
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
|
|
|
@ -181,15 +181,20 @@ private:
|
||||||
|
|
||||||
namespace std {
|
namespace std {
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Template specialization to allow xlnt:path to be used as a key in a std container.
|
||||||
|
/// </summary>
|
||||||
template <>
|
template <>
|
||||||
struct hash<xlnt::path>
|
struct hash<xlnt::path>
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
size_t operator()(const xlnt::path &p) const
|
size_t operator()(const xlnt::path &p) const
|
||||||
{
|
{
|
||||||
|
static hash<string> hasher;
|
||||||
return hasher(p.string());
|
return hasher(p.string());
|
||||||
}
|
}
|
||||||
|
|
||||||
hash<string> hasher;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace std
|
} // namespace std
|
||||||
|
|
|
@ -29,6 +29,9 @@
|
||||||
|
|
||||||
namespace xlnt {
|
namespace xlnt {
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
///
|
||||||
|
/// </summary>
|
||||||
class XLNT_API utf8string
|
class XLNT_API utf8string
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
|
@ -21,6 +21,7 @@
|
||||||
//
|
//
|
||||||
// @license: http://www.opensource.org/licenses/mit-license.php
|
// @license: http://www.opensource.org/licenses/mit-license.php
|
||||||
// @author: see AUTHORS file
|
// @author: see AUTHORS file
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include <iterator>
|
#include <iterator>
|
||||||
|
@ -113,7 +114,7 @@ public:
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
const workbook &get_workbook() const;
|
const workbook &get_workbook() const;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
|
@ -699,7 +700,7 @@ public:
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
bool has_view() const;
|
bool has_view() const;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
|
@ -709,30 +710,30 @@ public:
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
bool x14ac_enabled() const;
|
bool x14ac_enabled() const;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
void enable_x14ac();
|
void enable_x14ac();
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
void disable_x14ac();
|
void disable_x14ac();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
friend class cell;
|
friend class cell;
|
||||||
friend class const_range_iterator;
|
friend class const_range_iterator;
|
||||||
friend class range_iterator;
|
friend class range_iterator;
|
||||||
friend class workbook;
|
friend class workbook;
|
||||||
friend class detail::xlsx_consumer;
|
friend class detail::xlsx_consumer;
|
||||||
friend class detail::xlsx_producer;
|
friend class detail::xlsx_producer;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
void register_comments_in_manifest();
|
void register_comments_in_manifest();
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
|
|
|
@ -862,7 +862,7 @@ calendar cell::get_base_date() const
|
||||||
return get_workbook().get_base_date();
|
return get_workbook().get_base_date();
|
||||||
}
|
}
|
||||||
|
|
||||||
std::ostream &operator<<(std::ostream &stream, const xlnt::cell &cell)
|
XLNT_API std::ostream &operator<<(std::ostream &stream, const xlnt::cell &cell)
|
||||||
{
|
{
|
||||||
return stream << cell.to_string();
|
return stream << cell.to_string();
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,157 +0,0 @@
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include <iostream>
|
|
||||||
#include <cxxtest/TestSuite.h>
|
|
||||||
|
|
||||||
#include <xlnt/xlnt.hpp>
|
|
||||||
|
|
||||||
class test_chart : public CxxTest::TestSuite
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
void setUp()
|
|
||||||
{
|
|
||||||
/*
|
|
||||||
xlnt::workbook wb;
|
|
||||||
auto ws = wb.get_active();
|
|
||||||
ws.set_title("data");
|
|
||||||
|
|
||||||
for(int i = 0; i < 10; i++)
|
|
||||||
{
|
|
||||||
ws.cell(i, 0) = i;
|
|
||||||
auto chart = BarChart();
|
|
||||||
chart.title = "TITLE";
|
|
||||||
chart.add_serie(Serie(Reference(ws, (0, 0), (10, 0))));
|
|
||||||
chart._series[-1].color = Color.GREEN;
|
|
||||||
cw = ChartWriter(chart);
|
|
||||||
root = Element("test");
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
}
|
|
||||||
|
|
||||||
void test_write_title()
|
|
||||||
{
|
|
||||||
/*
|
|
||||||
cw._write_title(root);
|
|
||||||
TS_ASSERT_EQUALS(get_xml(root), "<?xml version=\"1.0\" encoding=\"" + utf8_xml_str + "\"?><test><c:title><c:tx><c:rich><a:bodyPr /><a:lstStyle /><a:p><a:pPr><a:defRPr /></a:pPr><a:r><a:rPr lang="fr-FR" /><a:t>TITLE</a:t></a:r></a:p></c:rich></c:tx><c:layout /></c:title></test>");
|
|
||||||
*/
|
|
||||||
}
|
|
||||||
|
|
||||||
void test_write_xaxis()
|
|
||||||
{
|
|
||||||
/*
|
|
||||||
cw._write_axis(root, chart.x_axis, "c:catAx");
|
|
||||||
TS_ASSERT_EQUALS(get_xml(root), "<?xml version=\"1.0\" encoding=\"" + utf8_xml_str + "\"?><test><c:catAx><c:axId val="60871424" /><c:scaling><c:orientation val="minMax" /></c:scaling><c:axPos val="b" /><c:tickLblPos val="nextTo" /><c:crossAx val="60873344" /><c:crosses val="autoZero" /><c:auto val="1" /><c:lblAlgn val="ctr" /><c:lblOffset val="100" /></c:catAx></test>");
|
|
||||||
*/
|
|
||||||
}
|
|
||||||
|
|
||||||
void test_write_yaxis()
|
|
||||||
{
|
|
||||||
/*
|
|
||||||
cw._write_axis(root, chart.y_axis, "c:valAx");
|
|
||||||
TS_ASSERT_EQUALS(get_xml(root), "<?xml version=\"1.0\" encoding=\"" + utf8_xml_str + "\"?><test><c:valAx><c:axId val="60873344" /><c:scaling><c:orientation val="minMax" /><c:max val="10.0" /><c:min val="0.0" /></c:scaling><c:axPos val="l" /><c:majorGridlines /><c:numFmt formatCode="General" sourceLinked="1" /><c:tickLblPos val="nextTo" /><c:crossAx val="60871424" /><c:crosses val="autoZero" /><c:crossBetween val="between" /><c:majorUnit val="2.0" /></c:valAx></test>");
|
|
||||||
*/
|
|
||||||
}
|
|
||||||
|
|
||||||
void test_write_series()
|
|
||||||
{
|
|
||||||
//cw._write_series(root);
|
|
||||||
//TS_ASSERT_EQUALS(get_xml(root), "<?xml version=\"1.0\" encoding=\"" + utf8_xml_str + "\"?><test><c:ser><c:idx val="0" /><c:order val="0" /><c:spPr><a:solidFill><a:srgbClr val="00FF00" /></a:solidFill><a:ln><a:solidFill><a:srgbClr val="00FF00" /></a:solidFill></a:ln></c:spPr><c:marker><c:symbol val="none" /></c:marker><c:val><c:numRef><c:f>\"data\"!$A$1:$A$11</c:f><c:numCache><c:formatCode>General</c:formatCode><c:ptCount val="11" /><c:pt idx="0"><c:v>0</c:v></c:pt><c:pt idx="1"><c:v>1</c:v></c:pt><c:pt idx="2"><c:v>2</c:v></c:pt><c:pt idx="3"><c:v>3</c:v></c:pt><c:pt idx="4"><c:v>4</c:v></c:pt><c:pt idx="5"><c:v>5</c:v></c:pt><c:pt idx="6"><c:v>6</c:v></c:pt><c:pt idx="7"><c:v>7</c:v></c:pt><c:pt idx="8"><c:v>8</c:v></c:pt><c:pt idx="9"><c:v>9</c:v></c:pt><c:pt idx="10"><c:v>None</c:v></c:pt></c:numCache></c:numRef></c:val></c:ser></test>");
|
|
||||||
}
|
|
||||||
|
|
||||||
void test_write_legend()
|
|
||||||
{
|
|
||||||
/*cw._write_legend(root);
|
|
||||||
TS_ASSERT_EQUALS(get_xml(root), "<?xml version=\"1.0\" encoding=\"" + utf8_xml_str + "\"?><test><c:legend><c:legendPos val="r" /><c:layout /></c:legend></test>");*/
|
|
||||||
}
|
|
||||||
|
|
||||||
void test_no_write_legend()
|
|
||||||
{
|
|
||||||
/*xlnt::workbook wb;
|
|
||||||
auto ws = wb.get_active();
|
|
||||||
ws.set_title("data");
|
|
||||||
for(int i = 0; i < 10; i++)
|
|
||||||
{
|
|
||||||
ws.cell(i, 0) = i;
|
|
||||||
ws.cell(i, 1) = i;
|
|
||||||
scatterchart = ScatterChart();
|
|
||||||
scatterchart.add_serie(Serie(Reference(ws, (0, 0), (10, 0)), ;
|
|
||||||
xvalues = Reference(ws, (0, 1), (10, 1))));
|
|
||||||
cw = ChartWriter(scatterchart);
|
|
||||||
root = Element("test");
|
|
||||||
scatterchart.show_legend = False;
|
|
||||||
cw._write_legend(root);
|
|
||||||
TS_ASSERT_EQUALS(get_xml(root), "<?xml version=\"1.0\" encoding=\"" + utf8_xml_str + "\"?><test />");
|
|
||||||
}*/
|
|
||||||
}
|
|
||||||
|
|
||||||
void test_write_print_settings()
|
|
||||||
{
|
|
||||||
/*cw._write_print_settings(root);
|
|
||||||
TS_ASSERT_EQUALS(get_xml(root), "<?xml version=\"1.0\" encoding=\"" + utf8_xml_str + "\"?><test><c:printSettings><c:headerFooter /><c:pageMargins b="0.75" footer="0.3" header="0.3" l="0.7" r="0.7" t="0.75" /><c:pageSetup /></c:printSettings></test>");*/
|
|
||||||
}
|
|
||||||
|
|
||||||
void test_write_chart()
|
|
||||||
{
|
|
||||||
//cw._write_chart(root);
|
|
||||||
//// Truncate floats because results differ with Python >= 3.2 and <= 3.1
|
|
||||||
//test_xml = sub("([0-9][.][0-9]{4})[0-9]*", "\\1", get_xml(root));
|
|
||||||
//TS_ASSERT_EQUALS(test_xml, "<?xml version=\"1.0\" encoding=\"" + utf8_xml_str + "\"?><test><c:chart><c:title><c:tx><c:rich><a:bodyPr /><a:lstStyle /><a:p><a:pPr><a:defRPr /></a:pPr><a:r><a:rPr lang="fr-FR" /><a:t>TITLE</a:t></a:r></a:p></c:rich></c:tx><c:layout /></c:title><c:plotArea><c:layout><c:manualLayout><c:layoutTarget val="inner" /><c:xMode val="edge" /><c:yMode val="edge" /><c:x val="1.2857" /><c:y val="0.2125" /><c:w val="0.6" /><c:h val="0.6" /></c:manualLayout></c:layout><c:barChart><c:barDir val="col" /><c:grouping val="clustered" /><c:ser><c:idx val="0" /><c:order val="0" /><c:spPr><a:solidFill><a:srgbClr val="00FF00" /></a:solidFill><a:ln><a:solidFill><a:srgbClr val="00FF00" /></a:solidFill></a:ln></c:spPr><c:marker><c:symbol val="none" /></c:marker><c:val><c:numRef><c:f>\"data\"!$A$1:$A$11</c:f><c:numCache><c:formatCode>General</c:formatCode><c:ptCount val="11" /><c:pt idx="0"><c:v>0</c:v></c:pt><c:pt idx="1"><c:v>1</c:v></c:pt><c:pt idx="2"><c:v>2</c:v></c:pt><c:pt idx="3"><c:v>3</c:v></c:pt><c:pt idx="4"><c:v>4</c:v></c:pt><c:pt idx="5"><c:v>5</c:v></c:pt><c:pt idx="6"><c:v>6</c:v></c:pt><c:pt idx="7"><c:v>7</c:v></c:pt><c:pt idx="8"><c:v>8</c:v></c:pt><c:pt idx="9"><c:v>9</c:v></c:pt><c:pt idx="10"><c:v>None</c:v></c:pt></c:numCache></c:numRef></c:val></c:ser><c:marker val="1" /><c:axId val="60871424" /><c:axId val="60873344" /></c:barChart><c:catAx><c:axId val="60871424" /><c:scaling><c:orientation val="minMax" /></c:scaling><c:axPos val="b" /><c:tickLblPos val="nextTo" /><c:crossAx val="60873344" /><c:crosses val="autoZero" /><c:auto val="1" /><c:lblAlgn val="ctr" /><c:lblOffset val="100" /></c:catAx><c:valAx><c:axId val="60873344" /><c:scaling><c:orientation val="minMax" /><c:max val="10.0" /><c:min val="0.0" /></c:scaling><c:axPos val="l" /><c:majorGridlines /><c:numFmt formatCode="General" sourceLinked="1" /><c:tickLblPos val="nextTo" /><c:crossAx val="60871424" /><c:crosses val="autoZero" /><c:crossBetween val="between" /><c:majorUnit val="2.0" /></c:valAx></c:plotArea><c:legend><c:legendPos val="r" /><c:layout /></c:legend><c:plotVisOnly val="1" /></c:chart></test>");
|
|
||||||
}
|
|
||||||
|
|
||||||
void setUp_scatter()
|
|
||||||
{
|
|
||||||
/*wb = Workbook();
|
|
||||||
ws = wb.get_active_sheet();
|
|
||||||
ws.title = "data";
|
|
||||||
for i in range(10)
|
|
||||||
{
|
|
||||||
ws.cell(row = i, column = 0).value = i;
|
|
||||||
ws.cell(row = i, column = 1).value = i;
|
|
||||||
scatterchart = ScatterChart();
|
|
||||||
scatterchart.add_serie(Serie(Reference(ws, (0, 0), (10, 0)), ;
|
|
||||||
xvalues = Reference(ws, (0, 1), (10, 1))));
|
|
||||||
cw = ChartWriter(scatterchart);
|
|
||||||
root = Element("test");
|
|
||||||
}*/
|
|
||||||
}
|
|
||||||
|
|
||||||
void test_write_xaxis_scatter()
|
|
||||||
{
|
|
||||||
/*scatterchart.x_axis.title = "test x axis title";
|
|
||||||
cw._write_axis(root, scatterchart.x_axis, "c:valAx");
|
|
||||||
TS_ASSERT_EQUALS(get_xml(root), "<?xml version=\"1.0\" encoding=\"" + utf8_xml_str + "\"?><test><c:valAx><c:axId val="60871424" /><c:scaling><c:orientation val="minMax" /><c:max val="10.0" /><c:min val="0.0" /></c:scaling><c:axPos val="b" /><c:majorGridlines /><c:numFmt formatCode="General" sourceLinked="1" /><c:title><c:tx><c:rich><a:bodyPr /><a:lstStyle /><a:p><a:pPr><a:defRPr /></a:pPr><a:r><a:rPr lang="fr-FR" /><a:t>test x axis title</a:t></a:r></a:p></c:rich></c:tx><c:layout /></c:title><c:tickLblPos val="nextTo" /><c:crossAx val="60873344" /><c:crosses val="autoZero" /><c:auto val="1" /><c:lblAlgn val="ctr" /><c:lblOffset val="100" /><c:crossBetween val="midCat" /><c:majorUnit val="2.0" /></c:valAx></test>");*/
|
|
||||||
}
|
|
||||||
|
|
||||||
void test_write_yaxis_scatter()
|
|
||||||
{
|
|
||||||
/*scatterchart.y_axis.title = "test y axis title";
|
|
||||||
cw._write_axis(root, scatterchart.y_axis, "c:valAx");
|
|
||||||
TS_ASSERT_EQUALS(get_xml(root), "<?xml version=\"1.0\" encoding=\"" + utf8_xml_str + "\"?><test><c:valAx><c:axId val="60873344" /><c:scaling><c:orientation val="minMax" /><c:max val="10.0" /><c:min val="0.0" /></c:scaling><c:axPos val="l" /><c:majorGridlines /><c:numFmt formatCode="General" sourceLinked="1" /><c:title><c:tx><c:rich><a:bodyPr /><a:lstStyle /><a:p><a:pPr><a:defRPr /></a:pPr><a:r><a:rPr lang="fr-FR" /><a:t>test y axis title</a:t></a:r></a:p></c:rich></c:tx><c:layout /></c:title><c:tickLblPos val="nextTo" /><c:crossAx val="60871424" /><c:crosses val="autoZero" /><c:crossBetween val="midCat" /><c:majorUnit val="2.0" /></c:valAx></test>");*/
|
|
||||||
}
|
|
||||||
|
|
||||||
void test_write_series_scatter()
|
|
||||||
{
|
|
||||||
/*cw._write_series(root);
|
|
||||||
TS_ASSERT_EQUALS(get_xml(root), "<?xml version=\"1.0\" encoding=\"" + utf8_xml_str + "\"?><test><c:ser><c:idx val="0" /><c:order val="0" /><c:marker><c:symbol val="none" /></c:marker><c:xVal><c:numRef><c:f>\"data\"!$B$1:$B$11</c:f><c:numCache><c:formatCode>General</c:formatCode><c:ptCount val="11" /><c:pt idx="0"><c:v>0</c:v></c:pt><c:pt idx="1"><c:v>1</c:v></c:pt><c:pt idx="2"><c:v>2</c:v></c:pt><c:pt idx="3"><c:v>3</c:v></c:pt><c:pt idx="4"><c:v>4</c:v></c:pt><c:pt idx="5"><c:v>5</c:v></c:pt><c:pt idx="6"><c:v>6</c:v></c:pt><c:pt idx="7"><c:v>7</c:v></c:pt><c:pt idx="8"><c:v>8</c:v></c:pt><c:pt idx="9"><c:v>9</c:v></c:pt><c:pt idx="10"><c:v>None</c:v></c:pt></c:numCache></c:numRef></c:xVal><c:yVal><c:numRef><c:f>\"data\"!$A$1:$A$11</c:f><c:numCache><c:formatCode>General</c:formatCode><c:ptCount val="11" /><c:pt idx="0"><c:v>0</c:v></c:pt><c:pt idx="1"><c:v>1</c:v></c:pt><c:pt idx="2"><c:v>2</c:v></c:pt><c:pt idx="3"><c:v>3</c:v></c:pt><c:pt idx="4"><c:v>4</c:v></c:pt><c:pt idx="5"><c:v>5</c:v></c:pt><c:pt idx="6"><c:v>6</c:v></c:pt><c:pt idx="7"><c:v>7</c:v></c:pt><c:pt idx="8"><c:v>8</c:v></c:pt><c:pt idx="9"><c:v>9</c:v></c:pt><c:pt idx="10"><c:v>None</c:v></c:pt></c:numCache></c:numRef></c:yVal></c:ser></test>");*/
|
|
||||||
}
|
|
||||||
|
|
||||||
void test_write_legend_scatter()
|
|
||||||
{
|
|
||||||
/*cw._write_legend(root);
|
|
||||||
TS_ASSERT_EQUALS(get_xml(root), "<?xml version=\"1.0\" encoding=\"" + utf8_xml_str + "\"?><test><c:legend><c:legendPos val="r" /><c:layout /></c:legend></test>");*/
|
|
||||||
}
|
|
||||||
|
|
||||||
void test_write_print_settings_scatter()
|
|
||||||
{
|
|
||||||
/*cw._write_print_settings(root);
|
|
||||||
TS_ASSERT_EQUALS(get_xml(root), "<?xml version=\"1.0\" encoding=\"" + utf8_xml_str + "\"?><test><c:printSettings><c:headerFooter /><c:pageMargins b="0.75" footer="0.3" header="0.3" l="0.7" r="0.7" t="0.75" /><c:pageSetup /></c:printSettings></test>");*/
|
|
||||||
}
|
|
||||||
|
|
||||||
void test_write_chart_scatter()
|
|
||||||
{
|
|
||||||
//cw._write_chart(root);
|
|
||||||
//// Truncate floats because results differ with Python >= 3.2 and <= 3.1
|
|
||||||
//test_xml = sub("([0-9][.][0-9]{4})[0-9]*", "\\1", get_xml(root));
|
|
||||||
//TS_ASSERT_EQUALS(test_xml, "<?xml version=\"1.0\" encoding=\"" + utf8_xml_str + "\"?>;
|
|
||||||
}
|
|
||||||
};
|
|
|
@ -2222,9 +2222,8 @@ void xlsx_consumer::read_worksheet(const std::string &rel_id)
|
||||||
auto vml_drawings_part = manifest.canonicalize({workbook_rel, sheet_rel,
|
auto vml_drawings_part = manifest.canonicalize({workbook_rel, sheet_rel,
|
||||||
manifest.get_relationship(sheet_path, xlnt::relationship::type::vml_drawing)});
|
manifest.get_relationship(sheet_path, xlnt::relationship::type::vml_drawing)});
|
||||||
|
|
||||||
auto receive = xml::parser::receive_default;
|
xml::parser vml_parser(archive_->open(vml_drawings_part.string()), vml_drawings_part.string(), receive);
|
||||||
xml::parser parser(archive_->open(vml_drawings_part.string()), vml_drawings_part.string(), receive);
|
parser_ = &vml_parser;
|
||||||
parser_ = &parser;
|
|
||||||
|
|
||||||
read_vml_drawings(ws);
|
read_vml_drawings(ws);
|
||||||
}
|
}
|
||||||
|
@ -2233,7 +2232,7 @@ void xlsx_consumer::read_worksheet(const std::string &rel_id)
|
||||||
|
|
||||||
// Sheet Relationship Target Parts
|
// Sheet Relationship Target Parts
|
||||||
|
|
||||||
void xlsx_consumer::read_vml_drawings(worksheet ws)
|
void xlsx_consumer::read_vml_drawings(worksheet/*ws*/)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,39 +0,0 @@
|
||||||
// Copyright (c) 2014-2016 Thomas Fussell
|
|
||||||
// Copyright (c) 2010-2015 openpyxl
|
|
||||||
//
|
|
||||||
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
// of this software and associated documentation files (the "Software"), to deal
|
|
||||||
// in the Software without restriction, including without limitation the rights
|
|
||||||
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
// copies of the Software, and to permit persons to whom the Software is
|
|
||||||
// furnished to do so, subject to the following conditions:
|
|
||||||
//
|
|
||||||
// The above copyright notice and this permission notice shall be included in
|
|
||||||
// all copies or substantial portions of the Software.
|
|
||||||
//
|
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, WRISING FROM,
|
|
||||||
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
||||||
// THE SOFTWARE
|
|
||||||
//
|
|
||||||
// @license: http://www.opensource.org/licenses/mit-license.php
|
|
||||||
// @author: see AUTHORS file
|
|
||||||
#include <xlnt/drawing/drawing.hpp>
|
|
||||||
|
|
||||||
namespace xlnt {
|
|
||||||
|
|
||||||
struct drawing_struct
|
|
||||||
{
|
|
||||||
drawing_struct()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
drawing::drawing() : root_(nullptr)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
} // namespace xlnt
|
|
|
@ -1,10 +0,0 @@
|
||||||
#pragma once
|
|
||||||
|
|
||||||
#include <iostream>
|
|
||||||
#include <cxxtest/TestSuite.h>
|
|
||||||
|
|
||||||
#include <xlnt/xlnt.hpp>
|
|
||||||
|
|
||||||
class test_drawing : public CxxTest::TestSuite
|
|
||||||
{
|
|
||||||
};
|
|
Loading…
Reference in New Issue
Block a user