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"
20class formula_name_resolver;
31namespace spreadsheet {
36class pivot_collection;
40struct document_config;
68 virtual void dump(dump_format_t format, std::string_view output)
const override;
71 virtual void dump(dump_format_t format, std::u16string_view output)
const override;
74 virtual void dump_check(std::ostream& os)
const override;
80 const styles& get_styles()
const;
85 sheet* append_sheet(std::string_view sheet_name);
86 sheet* get_sheet(std::string_view sheet_name);
87 const sheet* get_sheet(std::string_view sheet_name)
const;
88 sheet* get_sheet(sheet_t sheet_pos);
89 const sheet* get_sheet(sheet_t sheet_pos)
const;
102 sheet_t get_sheet_index(std::string_view name)
const;
103 std::string_view get_sheet_name(sheet_t sheet_pos)
const;
115 size_t get_sheet_count()
const;
117 void set_origin_date(
int year,
int month,
int day);
120 void set_formula_grammar(formula_grammar_t grammar);
121 formula_grammar_t get_formula_grammar()
const;
123 const ixion::formula_name_resolver* get_formula_name_resolver(formula_ref_context_t cxt)
const;
125 ixion::model_context& get_model_context();
126 const ixion::model_context& get_model_context()
const;
135 const tables& get_tables()
const;
138 void finalize_import();
139 void insert_dirty_cell(
const ixion::abs_address_t& pos);
142 std::unique_ptr<detail::document_impl> mp_impl;
Definition interface.hpp:66
Definition document.hpp:55
virtual void dump_check(std::ostream &os) const override
void recalc_formula_cells()
virtual void dump(dump_format_t format, std::string_view output) const override
virtual void dump(dump_format_t format, std::u16string_view output) const override
void set_sheet_name(sheet_t sheet_pos, std::string name)
Definition factory.hpp:53
Definition shared_strings.hpp:31
Definition styles.hpp:196
Definition string_pool.hpp:26