8 #ifndef ORCUS_SPREADSHEET_IMPORT_INTERFACE_HPP 9 #define ORCUS_SPREADSHEET_IMPORT_INTERFACE_HPP 14 #include "../types.hpp" 21 namespace orcus {
namespace spreadsheet {
namespace iface {
43 virtual size_t append(
const char* s,
size_t n) = 0;
56 virtual size_t add(
const char* s,
size_t n) = 0;
58 virtual void set_segment_font(
size_t font_index) = 0;
59 virtual void set_segment_bold(
bool b) = 0;
60 virtual void set_segment_italic(
bool b) = 0;
61 virtual void set_segment_font_name(
const char* s,
size_t n) = 0;
62 virtual void set_segment_font_size(
double point) = 0;
63 virtual void set_segment_font_color(color_elem_t alpha, color_elem_t red, color_elem_t green, color_elem_t blue) = 0;
64 virtual void append_segment(
const char* s,
size_t n) = 0;
65 virtual size_t commit_segments() = 0;
87 virtual void set_font_count(
size_t n) = 0;
88 virtual void set_font_bold(
bool b) = 0;
89 virtual void set_font_italic(
bool b) = 0;
90 virtual void set_font_name(
const char* s,
size_t n) = 0;
91 virtual void set_font_size(
double point) = 0;
92 virtual void set_font_underline(orcus::spreadsheet::underline_t e) = 0;
93 virtual void set_font_color(color_elem_t alpha, color_elem_t red, color_elem_t green, color_elem_t blue) = 0;
94 virtual size_t commit_font() = 0;
98 virtual void set_fill_count(
size_t n) = 0;
99 virtual void set_fill_pattern_type(
const char* s,
size_t n) = 0;
100 virtual void set_fill_fg_color(color_elem_t alpha, color_elem_t red, color_elem_t green, color_elem_t blue) = 0;
101 virtual void set_fill_bg_color(color_elem_t alpha, color_elem_t red, color_elem_t green, color_elem_t blue) = 0;
102 virtual size_t commit_fill() = 0;
106 virtual void set_border_count(
size_t n) = 0;
109 virtual void set_border_style(orcus::spreadsheet::border_direction_t dir,
const char* s,
size_t n) = 0;
110 virtual void set_border_style(orcus::spreadsheet::border_direction_t dir, border_style_t style) = 0;
111 virtual void set_border_color(
112 orcus::spreadsheet::border_direction_t dir, color_elem_t alpha, color_elem_t red, color_elem_t green, color_elem_t blue) = 0;
113 virtual size_t commit_border() = 0;
116 virtual void set_cell_hidden(
bool b) = 0;
117 virtual void set_cell_locked(
bool b) = 0;
118 virtual size_t commit_cell_protection() = 0;
121 virtual void set_number_format_count(
size_t n) = 0;
122 virtual void set_number_format_identifier(
size_t id) = 0;
123 virtual void set_number_format_code(
const char* s,
size_t n) = 0;
124 virtual size_t commit_number_format() = 0;
128 virtual void set_cell_xf_count(
size_t n) = 0;
129 virtual void set_cell_style_xf_count(
size_t n) = 0;
130 virtual void set_dxf_count(
size_t n) = 0;
132 virtual void set_xf_font(
size_t index) = 0;
133 virtual void set_xf_fill(
size_t index) = 0;
134 virtual void set_xf_border(
size_t index) = 0;
135 virtual void set_xf_protection(
size_t index) = 0;
136 virtual void set_xf_number_format(
size_t index) = 0;
137 virtual void set_xf_style_xf(
size_t index) = 0;
138 virtual void set_xf_apply_alignment(
bool b) = 0;
139 virtual void set_xf_horizontal_alignment(orcus::spreadsheet::hor_alignment_t align) = 0;
140 virtual void set_xf_vertical_alignment(orcus::spreadsheet::ver_alignment_t align) = 0;
142 virtual size_t commit_cell_xf() = 0;
143 virtual size_t commit_cell_style_xf() = 0;
144 virtual size_t commit_dxf() = 0;
148 virtual void set_cell_style_count(
size_t n) = 0;
149 virtual void set_cell_style_name(
const char* s,
size_t n) = 0;
150 virtual void set_cell_style_xf(
size_t index) = 0;
151 virtual void set_cell_style_builtin(
size_t index) = 0;
152 virtual void set_cell_style_parent_name(
const char* s,
size_t n) = 0;
153 virtual size_t commit_cell_style() = 0;
161 virtual void set_column_width(orcus::spreadsheet::col_t col,
double width, orcus::length_unit_t unit) = 0;
163 virtual void set_column_hidden(orcus::spreadsheet::col_t col,
bool hidden) = 0;
165 virtual void set_row_height(orcus::spreadsheet::row_t row,
double height, orcus::length_unit_t unit) = 0;
167 virtual void set_row_hidden(orcus::spreadsheet::row_t row,
bool hidden) = 0;
176 virtual void set_merge_cell_range(
const char* p_range,
size_t n_range) = 0;
187 virtual void set_type(orcus::spreadsheet::data_table_type_t type) = 0;
189 virtual void set_range(
const char* p_range,
size_t n_range) = 0;
191 virtual void set_first_reference(
const char* p_ref,
size_t n_ref,
bool deleted) = 0;
193 virtual void set_second_reference(
const char* p_ref,
size_t n_ref,
bool deleted) = 0;
195 virtual void commit() = 0;
210 virtual void set_range(
const char* p_ref,
size_t n_ref) = 0;
219 virtual void set_column(orcus::spreadsheet::col_t col) = 0;
227 virtual void append_column_match_value(
const char* p,
size_t n) = 0;
232 virtual void commit_column() = 0;
237 virtual void commit() = 0;
271 virtual void set_color(color_elem_t alpha, color_elem_t red,
272 color_elem_t green, color_elem_t blue) = 0;
277 virtual void set_formula(
const char* p,
size_t n) = 0;
283 virtual void set_condition_type(orcus::spreadsheet::condition_type_t type) = 0;
288 virtual void set_date(orcus::spreadsheet::condition_date_t date) = 0;
293 virtual void commit_condition() = 0;
299 virtual void set_icon_name(
const char* p,
size_t n) = 0;
305 virtual void set_databar_gradient(
bool gradient) = 0;
311 virtual void set_databar_axis(orcus::spreadsheet::databar_axis_t axis) = 0;
317 virtual void set_databar_color_positive(color_elem_t alpha, color_elem_t red,
318 color_elem_t green, color_elem_t blue) = 0;
324 virtual void set_databar_color_negative(color_elem_t alpha, color_elem_t red,
325 color_elem_t green, color_elem_t blue) = 0;
331 virtual void set_min_databar_length(
double length) = 0;
337 virtual void set_max_databar_length(
double length) = 0;
343 virtual void set_show_value(
bool show) = 0;
349 virtual void set_iconset_reverse(
bool reverse) = 0;
354 virtual void set_xf_id(
size_t xf) = 0;
360 virtual void set_operator(orcus::spreadsheet::condition_operator_t condition_type) = 0;
362 virtual void set_type(orcus::spreadsheet::conditional_format_t type) = 0;
364 virtual void commit_entry() = 0;
366 virtual void set_range(
const char* p,
size_t n) = 0;
368 virtual void set_range(orcus::spreadsheet::row_t row_start, orcus::spreadsheet::col_t col_start,
369 orcus::spreadsheet::row_t row_end, orcus::spreadsheet::col_t col_end) = 0;
371 virtual void commit_format() = 0;
385 virtual void set_identifier(
size_t id) = 0;
387 virtual void set_range(
const char* p_ref,
size_t n_ref) = 0;
389 virtual void set_totals_row_count(
size_t row_count) = 0;
391 virtual void set_name(
const char* p,
size_t n) = 0;
393 virtual void set_display_name(
const char* p,
size_t n) = 0;
395 virtual void set_column_count(
size_t n) = 0;
397 virtual void set_column_identifier(
size_t id) = 0;
398 virtual void set_column_name(
const char* p,
size_t n) = 0;
399 virtual void set_column_totals_row_label(
const char* p,
size_t n) = 0;
400 virtual void set_column_totals_row_function(orcus::spreadsheet::totals_row_function_t func) = 0;
401 virtual void commit_column() = 0;
403 virtual void set_style_name(
const char* p,
size_t n) = 0;
404 virtual void set_style_show_first_column(
bool b) = 0;
405 virtual void set_style_show_last_column(
bool b) = 0;
406 virtual void set_style_show_row_stripes(
bool b) = 0;
407 virtual void set_style_show_column_stripes(
bool b) = 0;
409 virtual void commit() = 0;
475 virtual void set_auto(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col,
const char* p,
size_t n) = 0;
484 virtual void set_string(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col,
size_t sindex) = 0;
493 virtual void set_value(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col,
double value) = 0;
502 virtual void set_bool(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col,
bool value) = 0;
510 virtual void set_date_time(
511 orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col,
512 int year,
int month,
int day,
int hour,
int minute,
double second) = 0;
522 virtual void set_format(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col,
size_t xf_index) = 0;
534 virtual void set_format(orcus::spreadsheet::row_t row_start, orcus::spreadsheet::col_t col_start,
535 orcus::spreadsheet::row_t row_end, orcus::spreadsheet::col_t col_end,
size_t xf_index) = 0;
547 virtual void set_formula(
548 orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, orcus::spreadsheet::formula_grammar_t grammar,
549 const char* p,
size_t n) = 0;
566 virtual void set_shared_formula(
567 orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, orcus::spreadsheet::formula_grammar_t grammar,
568 size_t sindex,
const char* p_formula,
size_t n_formula,
const char* p_range,
size_t n_range) = 0;
583 virtual void set_shared_formula(
584 orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, orcus::spreadsheet::formula_grammar_t grammar,
585 size_t sindex,
const char* p_formula,
size_t n_formula) = 0;
599 virtual void set_shared_formula(
600 orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col,
size_t sindex) = 0;
602 virtual void set_formula_result(
603 orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col,
double value) = 0;
605 virtual void set_formula_result(
606 orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col,
const char* p,
size_t n) = 0;
620 virtual void set_array_formula(
621 orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, orcus::spreadsheet::formula_grammar_t grammar,
622 const char* p,
size_t n, orcus::spreadsheet::row_t array_rows, orcus::spreadsheet::col_t array_cols) = 0;
636 virtual void set_array_formula(
637 orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, orcus::spreadsheet::formula_grammar_t grammar,
638 const char* p,
size_t n,
const char* p_range,
size_t n_range) = 0;
655 virtual void set_origin_date(
int year,
int month,
int day) = 0;
665 virtual void set_default_formula_grammar(orcus::spreadsheet::formula_grammar_t grammar) = 0;
672 virtual orcus::spreadsheet::formula_grammar_t get_default_formula_grammar()
const = 0;
708 virtual import_sheet* append_sheet(
const char* sheet_name,
size_t sheet_name_length) = 0;
715 virtual import_sheet* get_sheet(
const char* sheet_name,
size_t sheet_name_length) = 0;
725 virtual import_sheet* get_sheet(orcus::spreadsheet::sheet_t sheet_index) = 0;
731 virtual void finalize() = 0;
virtual size_t add(const char *s, size_t n)=0
Definition: import_interface.hpp:415
Definition: import_interface.hpp:80
Definition: import_interface.hpp:198
Definition: import_interface.hpp:641
virtual size_t append(const char *s, size_t n)=0
Definition: import_interface.hpp:156
Definition: import_interface.hpp:685
Definition: import_interface.hpp:182
Definition: import_interface.hpp:26
Definition: import_interface.hpp:378
Definition: base64.hpp:15