8 #ifndef INCLUDED_ORCUS_SPREADSHEET_DOCUMENT_HPP 9 #define INCLUDED_ORCUS_SPREADSHEET_DOCUMENT_HPP 11 #include "orcus/env.hpp" 12 #include "orcus/interface.hpp" 13 #include "orcus/spreadsheet/types.hpp" 20 class formula_name_resolver;
32 namespace spreadsheet {
34 class import_shared_strings;
36 class pivot_collection;
39 struct document_config;
62 const styles& get_styles()
const;
70 sheet* get_sheet(sheet_t sheet_pos);
71 const sheet* get_sheet(sheet_t sheet_pos)
const;
82 void recalc_formula_cells();
84 virtual void dump(dump_format_t format,
const std::string& output)
const override;
89 void dump_flat(
const std::string& outdir)
const;
97 void dump_html(const ::std::string& outdir)
const;
99 void dump_json(const ::std::string& outdir)
const;
101 void dump_csv(
const std::string& outdir)
const;
107 virtual void dump_check(std::ostream& os)
const override;
109 sheet_t get_sheet_index(
const pstring& name)
const;
110 pstring get_sheet_name(sheet_t sheet_pos)
const;
114 size_t get_sheet_count()
const;
116 void set_origin_date(
int year,
int month,
int day);
119 void set_formula_grammar(formula_grammar_t grammar);
120 formula_grammar_t get_formula_grammar()
const;
122 const ixion::formula_name_resolver* get_formula_name_resolver(formula_ref_context_t cxt)
const;
124 ixion::model_context& get_model_context();
125 const ixion::model_context& get_model_context()
const;
147 void insert_dirty_cell(
const ixion::abs_address_t& pos);
150 std::unique_ptr<document_impl> mp_impl;
Definition: shared_strings.hpp:51
Definition: pstring.hpp:27
Definition: types.hpp:444
Definition: pivot.hpp:266
Definition: document.hpp:47
Definition: document.hpp:18
Definition: interface.hpp:44
Definition: config.hpp:17
Definition: types.hpp:397
Definition: styles.hpp:149
Definition: string_pool.hpp:23
Definition: base64.hpp:15
Definition: auto_filter.hpp:98