summaryrefslogtreecommitdiff
path: root/sc/source
diff options
context:
space:
mode:
authorKohei Yoshida <kohei@libreoffice.org>2021-11-01 14:01:22 -0400
committerKohei Yoshida <kohei@libreoffice.org>2021-11-03 21:17:18 +0100
commiteb07a0e76fe240a184348d96a6cebf7c0a229ac0 (patch)
tree23ab960b7a163696e4a7c1d4c4c20c1340fa14b3 /sc/source
parent9b9f4a4487e9ada1885d45a8b1ba0234a4a9fc26 (diff)
Upgrade mdds and liborcus to 2.0.0 and 0.17.0, respectively.
Change-Id: I9e856fc2d61f1789a6f1702514837860539a0f49 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124573 Tested-by: Jenkins Tested-by: René Engelhard <rene@debian.org> Reviewed-by: Kohei Yoshida <kohei@libreoffice.org>
Diffstat (limited to 'sc/source')
-rw-r--r--sc/source/filter/inc/orcusinterface.hxx50
-rw-r--r--sc/source/filter/orcus/interface.cxx97
-rw-r--r--sc/source/filter/orcus/orcusfiltersimpl.cxx8
-rw-r--r--sc/source/filter/orcus/xmlcontext.cxx10
4 files changed, 81 insertions, 84 deletions
diff --git a/sc/source/filter/inc/orcusinterface.hxx b/sc/source/filter/inc/orcusinterface.hxx
index 060456733fbc..935854c46e3f 100644
--- a/sc/source/filter/inc/orcusinterface.hxx
+++ b/sc/source/filter/inc/orcusinterface.hxx
@@ -75,8 +75,8 @@ class ScOrcusRefResolver : public orcus::spreadsheet::iface::import_reference_re
public:
ScOrcusRefResolver( const ScOrcusGlobalSettings& rGS );
- orcus::spreadsheet::src_address_t resolve_address(const char* p, size_t n) override;
- orcus::spreadsheet::src_range_t resolve_range(const char* p, size_t n) override;
+ orcus::spreadsheet::src_address_t resolve_address(std::string_view address) override;
+ orcus::spreadsheet::src_range_t resolve_range(std::string_view range) override;
};
class ScOrcusNamedExpression : public orcus::spreadsheet::iface::import_named_expression
@@ -94,8 +94,8 @@ public:
void reset();
virtual void set_base_position(const orcus::spreadsheet::src_address_t& pos) override;
- virtual void set_named_expression(const char* p_name, size_t n_name, const char* p_exp, size_t n_exp) override;
- virtual void set_named_range(const char* p_name, size_t n_name, const char* p_range, size_t n_range) override;
+ virtual void set_named_expression(std::string_view name, std::string_view expression) override;
+ virtual void set_named_range(std::string_view name, std::string_view range) override;
virtual void commit() override;
};
@@ -107,19 +107,19 @@ class ScOrcusSharedStrings : public orcus::spreadsheet::iface::import_shared_str
public:
ScOrcusSharedStrings(ScOrcusFactory& rFactory);
- virtual size_t append(const char* s, size_t n) override;
- virtual size_t add(const char* s, size_t n) override;
+ virtual size_t append(std::string_view s) override;
+ virtual size_t add(std::string_view s) override;
virtual void set_segment_bold(bool b) override;
virtual void set_segment_italic(bool b) override;
virtual void set_segment_font(size_t font_index) override;
- virtual void set_segment_font_name(const char* s, size_t n) override;
+ virtual void set_segment_font_name(std::string_view s) override;
virtual void set_segment_font_size(double point) override;
virtual void set_segment_font_color(orcus::spreadsheet::color_elem_t alpha,
orcus::spreadsheet::color_elem_t red,
orcus::spreadsheet::color_elem_t green,
orcus::spreadsheet::color_elem_t blue) override;
- virtual void append_segment(const char* s, size_t n) override;
+ virtual void append_segment(std::string_view s) override;
virtual size_t commit_segments() override;
};
@@ -133,7 +133,7 @@ public:
virtual void set_color(orcus::spreadsheet::color_elem_t alpha, orcus::spreadsheet::color_elem_t red,
orcus::spreadsheet::color_elem_t green, orcus::spreadsheet::color_elem_t blue) override;
- virtual void set_formula(const char* p, size_t n) override;
+ virtual void set_formula(std::string_view formula) override;
virtual void set_condition_type(orcus::spreadsheet::condition_type_t type) override;
@@ -141,7 +141,7 @@ public:
virtual void commit_condition() override;
- virtual void set_icon_name(const char* p, size_t n) override;
+ virtual void set_icon_name(std::string_view name) override;
virtual void set_databar_gradient(bool gradient) override;
@@ -169,7 +169,7 @@ public:
virtual void commit_entry() override;
- virtual void set_range(const char* p, size_t n) override;
+ virtual void set_range(std::string_view range) override;
virtual void set_range(orcus::spreadsheet::row_t row_start, orcus::spreadsheet::col_t col_start,
orcus::spreadsheet::row_t row_end, orcus::spreadsheet::col_t col_end) override;
@@ -197,7 +197,7 @@ public:
virtual void set_column(orcus::spreadsheet::col_t col) override;
- virtual void append_column_match_value(const char* p, size_t n) override;
+ virtual void append_column_match_value(std::string_view value) override;
virtual void commit_column() override;
@@ -243,7 +243,7 @@ class ScOrcusFormula : public orcus::spreadsheet::iface::import_formula
bool mbShared;
ResultType meResType;
- size_t mnResult; // result string index.
+ OUString maResult; // result string.
double mfResult;
void reset();
@@ -253,10 +253,10 @@ public:
virtual ~ScOrcusFormula() override;
virtual void set_position(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col) override;
- virtual void set_formula(orcus::spreadsheet::formula_grammar_t grammar, const char* p, size_t n) override;
+ virtual void set_formula(orcus::spreadsheet::formula_grammar_t grammar, std::string_view formula) override;
virtual void set_shared_formula_index(size_t index) override;
virtual void set_result_value(double value) override;
- virtual void set_result_string(size_t sindex) override;
+ virtual void set_result_string(std::string_view value) override;
virtual void set_result_empty() override;
virtual void set_result_bool(bool value) override;
virtual void commit() override;
@@ -282,9 +282,9 @@ public:
virtual ~ScOrcusArrayFormula() override;
virtual void set_range(const orcus::spreadsheet::range_t& range) override;
- virtual void set_formula(orcus::spreadsheet::formula_grammar_t grammar, const char* p, size_t n) override;
+ virtual void set_formula(orcus::spreadsheet::formula_grammar_t grammar, std::string_view formula) override;
virtual void set_result_value(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, double value) override;
- virtual void set_result_string(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, size_t sindex) override;
+ virtual void set_result_string(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, std::string_view value) override;
virtual void set_result_empty(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col) override;
virtual void set_result_bool(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, bool value) override;
virtual void commit() override;
@@ -326,8 +326,8 @@ public:
virtual orcus::spreadsheet::iface::import_array_formula* get_array_formula() override;
// Orcus import interface
- virtual void set_auto(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, const char* p, size_t n) override;
- virtual void set_string(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, size_t sindex) override;
+ virtual void set_auto(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, std::string_view value) override;
+ virtual void set_string(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, orcus::spreadsheet::string_id_t sindex) override;
virtual void set_value(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, double value) override;
virtual void set_bool(orcus::spreadsheet::row_t row, orcus::spreadsheet::col_t col, bool value) override;
virtual void set_date_time(
@@ -491,7 +491,7 @@ public:
virtual void set_font_count(size_t n) override;
virtual void set_font_bold(bool b) override;
virtual void set_font_italic(bool b) override;
- virtual void set_font_name(const char* s, size_t n) override;
+ virtual void set_font_name(std::string_view name) override;
virtual void set_font_size(double point) override;
virtual void set_font_underline(orcus::spreadsheet::underline_t e) override;
virtual void set_font_underline_width(orcus::spreadsheet::underline_width_t e) override;
@@ -542,7 +542,7 @@ public:
// number format
virtual void set_number_format_count(size_t n) override;
virtual void set_number_format_identifier(size_t n) override;
- virtual void set_number_format_code(const char* s, size_t n) override;
+ virtual void set_number_format_code(std::string_view s) override;
virtual size_t commit_number_format() override;
// cell style xf
@@ -574,10 +574,10 @@ public:
// cell style entry
virtual void set_cell_style_count(size_t n) override;
- virtual void set_cell_style_name(const char* s, size_t n) override;
+ virtual void set_cell_style_name(std::string_view name) override;
virtual void set_cell_style_xf(size_t index) override;
virtual void set_cell_style_builtin(size_t index) override;
- virtual void set_cell_style_parent_name(const char* s, size_t n) override;
+ virtual void set_cell_style_parent_name(std::string_view name) override;
virtual size_t commit_cell_style() override;
};
@@ -639,8 +639,8 @@ public:
ScOrcusFactory(ScDocument& rDoc, bool bSkipDefaultStyles=false);
virtual orcus::spreadsheet::iface::import_sheet* append_sheet(
- orcus::spreadsheet::sheet_t sheet_index, const char *sheet_name, size_t sheet_name_length) override;
- virtual orcus::spreadsheet::iface::import_sheet* get_sheet(const char *sheet_name, size_t sheet_name_length) override;
+ orcus::spreadsheet::sheet_t sheet_index, std::string_view sheet_name) override;
+ virtual orcus::spreadsheet::iface::import_sheet* get_sheet(std::string_view sheet_name) override;
virtual orcus::spreadsheet::iface::import_sheet* get_sheet(orcus::spreadsheet::sheet_t sheet_index) override;
virtual orcus::spreadsheet::iface::import_global_settings* get_global_settings() override;
virtual orcus::spreadsheet::iface::import_shared_strings* get_shared_strings() override;
diff --git a/sc/source/filter/orcus/interface.cxx b/sc/source/filter/orcus/interface.cxx
index 0947b5dd650c..63926a72fc59 100644
--- a/sc/source/filter/orcus/interface.cxx
+++ b/sc/source/filter/orcus/interface.cxx
@@ -161,9 +161,9 @@ orcus::spreadsheet::formula_grammar_t ScOrcusGlobalSettings::get_default_formula
ScOrcusRefResolver::ScOrcusRefResolver( const ScOrcusGlobalSettings& rGS ) :
mrGlobalSettings(rGS) {}
-os::src_address_t ScOrcusRefResolver::resolve_address(const char* p, size_t n)
+os::src_address_t ScOrcusRefResolver::resolve_address(std::string_view address)
{
- OUString aStr(p, n, mrGlobalSettings.getTextEncoding());
+ OUString aStr(address.data(), address.size(), mrGlobalSettings.getTextEncoding());
ScAddress aAddr;
aAddr.Parse(aStr, mrGlobalSettings.getDoc().getDoc(),
@@ -173,7 +173,7 @@ os::src_address_t ScOrcusRefResolver::resolve_address(const char* p, size_t n)
if (!aAddr.IsValid())
{
std::ostringstream os;
- os << "'" << std::string(p, n) << "' is not a valid address expression.";
+ os << "'" << address << "' is not a valid address expression.";
throw orcus::invalid_arg_error(os.str());
}
@@ -185,9 +185,9 @@ os::src_address_t ScOrcusRefResolver::resolve_address(const char* p, size_t n)
return ret;
}
-os::src_range_t ScOrcusRefResolver::resolve_range(const char* p, size_t n)
+os::src_range_t ScOrcusRefResolver::resolve_range(std::string_view range)
{
- OUString aStr(p, n, mrGlobalSettings.getTextEncoding());
+ OUString aStr(range.data(), range.size(), mrGlobalSettings.getTextEncoding());
ScRange aRange;
aRange.Parse(aStr, mrGlobalSettings.getDoc().getDoc(),
@@ -197,7 +197,7 @@ os::src_range_t ScOrcusRefResolver::resolve_range(const char* p, size_t n)
if (!aRange.IsValid())
{
std::ostringstream os;
- os << "'" << std::string(p, n) << "' is not a valid range expression.";
+ os << "'" << range << "' is not a valid range expression.";
throw orcus::invalid_arg_error(os.str());
}
@@ -232,13 +232,13 @@ void ScOrcusNamedExpression::set_base_position(const orcus::spreadsheet::src_add
maBasePos.SetRow(pos.row);
}
-void ScOrcusNamedExpression::set_named_expression(const char* p_name, size_t n_name, const char* p_exp, size_t n_exp)
+void ScOrcusNamedExpression::set_named_expression(std::string_view name, std::string_view expression)
{
- maName = OUString(p_name, n_name, mrGlobalSettings.getTextEncoding());
- maExpr = OUString(p_exp, n_exp, mrGlobalSettings.getTextEncoding());
+ maName = OUString(name.data(), name.size(), mrGlobalSettings.getTextEncoding());
+ maExpr = OUString(expression.data(), expression.size(), mrGlobalSettings.getTextEncoding());
}
-void ScOrcusNamedExpression::set_named_range(const char* /*p_name*/, size_t /*n_name*/, const char* /*p_range*/, size_t /*n_range*/)
+void ScOrcusNamedExpression::set_named_range(std::string_view /*name*/, std::string_view /*range*/)
{
throw std::runtime_error("ScOrcusNamedExpression::set_named_range not implemented yet.");
}
@@ -309,9 +309,9 @@ ScOrcusFactory::ScOrcusFactory(ScDocument& rDoc, bool bSkipDefaultStyles) :
mnProgress(0) {}
orcus::spreadsheet::iface::import_sheet* ScOrcusFactory::append_sheet(
- orcus::spreadsheet::sheet_t sheet_index, const char* sheet_name, size_t sheet_name_length)
+ orcus::spreadsheet::sheet_t sheet_index, std::string_view sheet_name)
{
- OUString aTabName(sheet_name, sheet_name_length, maGlobalSettings.getTextEncoding());
+ OUString aTabName(sheet_name.data(), sheet_name.size(), maGlobalSettings.getTextEncoding());
if (sheet_index == 0)
{
@@ -345,9 +345,9 @@ public:
}
-orcus::spreadsheet::iface::import_sheet* ScOrcusFactory::get_sheet(const char* sheet_name, size_t sheet_name_length)
+orcus::spreadsheet::iface::import_sheet* ScOrcusFactory::get_sheet(std::string_view sheet_name)
{
- OUString aTabName(sheet_name, sheet_name_length, maGlobalSettings.getTextEncoding());
+ OUString aTabName(sheet_name.data(), sheet_name.size(), maGlobalSettings.getTextEncoding());
SCTAB nTab = maDoc.getSheetIndex(aTabName);
if (nTab < 0)
// Sheet by that name not found.
@@ -777,7 +777,7 @@ void ScOrcusConditionalFormat::set_condition_type(os::condition_type_t /*type*/)
SAL_INFO("sc.orcus.condformat", "set_condition_type");
}
-void ScOrcusConditionalFormat::set_formula(const char* /*p*/, size_t /*n*/)
+void ScOrcusConditionalFormat::set_formula(std::string_view /*formula*/)
{
SAL_INFO("sc.orcus.condformat", "set_formula");
}
@@ -793,7 +793,7 @@ void ScOrcusConditionalFormat::commit_condition()
SAL_INFO("sc.orcus.condformat", "commit_condition");
}
-void ScOrcusConditionalFormat::set_icon_name(const char* /*p*/, size_t /*n*/)
+void ScOrcusConditionalFormat::set_icon_name(std::string_view /*name*/)
{
assert(meEntryType == ScFormatEntry::Type::Iconset);
SAL_INFO("sc.orcus.condformat", "set_icon_name");
@@ -887,7 +887,7 @@ void ScOrcusConditionalFormat::commit_entry()
SAL_INFO("sc.orcus.condformat", "commit_entry");
}
-void ScOrcusConditionalFormat::set_range(const char* /*p*/, size_t /*n*/)
+void ScOrcusConditionalFormat::set_range(std::string_view /*range*/)
{
SAL_INFO("sc.orcus.condformat", "set_range");
}
@@ -930,7 +930,7 @@ void ScOrcusFormula::reset()
mnSharedFormulaIndex = 0;
mbShared = false;
meResType = ResultType::NotSet;
- mnResult = 0;
+ maResult.clear();
mfResult = 0.0;
}
@@ -942,7 +942,6 @@ ScOrcusFormula::ScOrcusFormula( ScOrcusSheet& rSheet ) :
mnSharedFormulaIndex(0),
mbShared(false),
meResType(ResultType::NotSet),
- mnResult(0),
mfResult(0.0) {}
ScOrcusFormula::~ScOrcusFormula() {}
@@ -953,9 +952,9 @@ void ScOrcusFormula::set_position(os::row_t row, os::col_t col)
mnRow = row;
}
-void ScOrcusFormula::set_formula(os::formula_grammar_t grammar, const char* p, size_t n)
+void ScOrcusFormula::set_formula(os::formula_grammar_t grammar, std::string_view formula)
{
- maFormula = OUString(p, n, mrSheet.getFactory().getGlobalSettings().getTextEncoding());
+ maFormula = OUString(formula.data(), formula.size(), mrSheet.getFactory().getGlobalSettings().getTextEncoding());
meGrammar = getCalcGrammarFromOrcus(grammar);
}
@@ -971,10 +970,10 @@ void ScOrcusFormula::set_result_value(double value)
mfResult = value;
}
-void ScOrcusFormula::set_result_string(size_t sindex)
+void ScOrcusFormula::set_result_string(std::string_view value)
{
meResType = ResultType::String;
- mnResult = sindex;
+ maResult = OUString(value.data(), value.size(), mrSheet.getFactory().getGlobalSettings().getTextEncoding());
}
void ScOrcusFormula::set_result_empty()
@@ -1028,9 +1027,7 @@ void ScOrcusFormula::commit()
{
case ResultType::String:
{
- const OUString* pStr = rFactory.getString(mnResult);
- if (pStr)
- rFactory.pushFormulaResult(aPos, *pStr);
+ rFactory.pushFormulaResult(aPos, maResult);
break;
}
case ResultType::Value:
@@ -1073,10 +1070,10 @@ void ScOrcusArrayFormula::set_range(const os::range_t& range)
mnRowRange = range.last.row - range.first.column + 1;
}
-void ScOrcusArrayFormula::set_formula(os::formula_grammar_t grammar, const char* p, size_t n)
+void ScOrcusArrayFormula::set_formula(os::formula_grammar_t grammar, std::string_view formula)
{
meGrammar = getCalcGrammarFromOrcus(grammar);
- maFormula = OUString(p, n, mrSheet.getFactory().getGlobalSettings().getTextEncoding());
+ maFormula = OUString(formula.data(), formula.size(), mrSheet.getFactory().getGlobalSettings().getTextEncoding());
}
void ScOrcusArrayFormula::set_result_value(os::row_t /*row*/, os::col_t /*col*/, double /*value*/)
@@ -1084,7 +1081,7 @@ void ScOrcusArrayFormula::set_result_value(os::row_t /*row*/, os::col_t /*col*/,
// TODO : implement result cache for matrix
}
-void ScOrcusArrayFormula::set_result_string(os::row_t /*row*/, os::col_t /*col*/, size_t /*sindex*/)
+void ScOrcusArrayFormula::set_result_string(os::row_t /*row*/, os::col_t /*col*/, std::string_view /*value*/)
{
// TODO : implement result cache for matrix
}
@@ -1158,16 +1155,16 @@ os::iface::import_array_formula* ScOrcusSheet::get_array_formula()
return &maArrayFormula;
}
-void ScOrcusSheet::set_auto(os::row_t row, os::col_t col, const char* p, size_t n)
+void ScOrcusSheet::set_auto(os::row_t row, os::col_t col, std::string_view value)
{
- OUString aVal(p, n, mrFactory.getGlobalSettings().getTextEncoding());
+ OUString aVal(value.data(), value.size(), mrFactory.getGlobalSettings().getTextEncoding());
mrFactory.pushCellStoreAutoToken(ScAddress(col, row, mnTab), aVal);
cellInserted();
}
-void ScOrcusSheet::set_string(os::row_t row, os::col_t col, size_t sindex)
+void ScOrcusSheet::set_string(os::row_t row, os::col_t col, os::string_id_t sindex)
{
- mrFactory.pushCellStoreToken(ScAddress(col, row, mnTab), uint32_t(sindex));
+ mrFactory.pushCellStoreToken(ScAddress(col, row, mnTab), sindex);
cellInserted();
}
@@ -1257,15 +1254,15 @@ ScOrcusFactory& ScOrcusSheet::getFactory()
ScOrcusSharedStrings::ScOrcusSharedStrings(ScOrcusFactory& rFactory) :
mrFactory(rFactory) {}
-size_t ScOrcusSharedStrings::append(const char* s, size_t n)
+size_t ScOrcusSharedStrings::append(std::string_view s)
{
- OUString aNewString(s, n, mrFactory.getGlobalSettings().getTextEncoding());
+ OUString aNewString(s.data(), s.size(), mrFactory.getGlobalSettings().getTextEncoding());
return mrFactory.appendString(aNewString);
}
-size_t ScOrcusSharedStrings::add(const char* s, size_t n)
+size_t ScOrcusSharedStrings::add(std::string_view s)
{
- OUString aNewString(s, n, mrFactory.getGlobalSettings().getTextEncoding());
+ OUString aNewString(s.data(), s.size(), mrFactory.getGlobalSettings().getTextEncoding());
return mrFactory.addString(aNewString);
}
@@ -1281,7 +1278,7 @@ void ScOrcusSharedStrings::set_segment_italic(bool /*b*/)
{
}
-void ScOrcusSharedStrings::set_segment_font_name(const char* /*s*/, size_t /*n*/)
+void ScOrcusSharedStrings::set_segment_font_name(std::string_view /*s*/)
{
}
@@ -1296,9 +1293,9 @@ void ScOrcusSharedStrings::set_segment_font_color(orcus::spreadsheet::color_elem
{
}
-void ScOrcusSharedStrings::append_segment(const char* s, size_t n)
+void ScOrcusSharedStrings::append_segment(std::string_view s)
{
- maCurSegment.append(s, n);
+ maCurSegment.append(s.data(), s.size());
}
size_t ScOrcusSharedStrings::commit_segments()
@@ -1610,9 +1607,9 @@ void ScOrcusStyles::set_font_italic(bool b)
maCurrentFont.mbHasFontAttr = true;
}
-void ScOrcusStyles::set_font_name(const char* s, size_t n)
+void ScOrcusStyles::set_font_name(std::string_view name)
{
- OUString aName(s, n, mrFactory.getGlobalSettings().getTextEncoding());
+ OUString aName(name.data(), name.size(), mrFactory.getGlobalSettings().getTextEncoding());
maCurrentFont.maName = aName;
maCurrentFont.mbHasFontAttr = true;
}
@@ -1985,9 +1982,9 @@ void ScOrcusStyles::set_number_format_identifier(size_t)
{
}
-void ScOrcusStyles::set_number_format_code(const char* s, size_t n)
+void ScOrcusStyles::set_number_format_code(std::string_view s)
{
- OUString aCode(s, n, mrFactory.getGlobalSettings().getTextEncoding());
+ OUString aCode(s.data(), s.size(), mrFactory.getGlobalSettings().getTextEncoding());
maCurrentNumberFormat.maCode = aCode;
maCurrentNumberFormat.mbHasNumberFormatAttr = true;
}
@@ -2141,9 +2138,9 @@ void ScOrcusStyles::set_cell_style_count(size_t /*n*/)
// needed at all?
}
-void ScOrcusStyles::set_cell_style_name(const char* s, size_t n)
+void ScOrcusStyles::set_cell_style_name(std::string_view name)
{
- OUString aName(s, n, mrFactory.getGlobalSettings().getTextEncoding());
+ OUString aName(name.data(), name.size(), mrFactory.getGlobalSettings().getTextEncoding());
maCurrentCellStyle.maName = aName;
}
@@ -2158,9 +2155,9 @@ void ScOrcusStyles::set_cell_style_builtin(size_t index)
maCurrentCellStyle.mnBuiltInId = index;
}
-void ScOrcusStyles::set_cell_style_parent_name(const char* s, size_t n)
+void ScOrcusStyles::set_cell_style_parent_name(std::string_view name)
{
- const OUString aParentName(s, n, mrFactory.getGlobalSettings().getTextEncoding());
+ const OUString aParentName(name.data(), name.size(), mrFactory.getGlobalSettings().getTextEncoding());
maCurrentCellStyle.maParentName = aParentName;
}
@@ -2215,9 +2212,9 @@ void ScOrcusAutoFilter::set_column(orcus::spreadsheet::col_t col)
SAL_INFO("sc.orcus.autofilter", "set_column: " << col);
}
-void ScOrcusAutoFilter::append_column_match_value(const char* p, size_t n)
+void ScOrcusAutoFilter::append_column_match_value(std::string_view value)
{
- OUString aString(p, n, mrGlobalSettings.getTextEncoding());
+ OUString aString(value.data(), value.size(), mrGlobalSettings.getTextEncoding());
SAL_INFO("sc.orcus.autofilter", "append_column_match_value: " << aString);
}
diff --git a/sc/source/filter/orcus/orcusfiltersimpl.cxx b/sc/source/filter/orcus/orcusfiltersimpl.cxx
index f063bd3b5524..db2d5705d51e 100644
--- a/sc/source/filter/orcus/orcusfiltersimpl.cxx
+++ b/sc/source/filter/orcus/orcusfiltersimpl.cxx
@@ -70,7 +70,7 @@ bool loadFileContent(SfxMedium& rMedium, orcus::iface::import_filter& filter)
try
{
- filter.read_stream(aBuffer.getStr(), aBuffer.getLength());
+ filter.read_stream(aBuffer);
}
catch (const std::exception& e)
{
@@ -148,14 +148,14 @@ bool ScOrcusFiltersImpl::importODS_Styles(ScDocument& rDoc, OUString& aPath) con
if (GetShortPathNameW(o3tl::toW(aPath.getStr()), buf, std::size(buf)) == 0)
throw;
aPath8 = OUStringToOString(o3tl::toU(buf), osl_getThreadTextEncoding());
- content = std::make_unique<orcus::file_content>(aPath8.getStr());
+ content = std::make_unique<orcus::file_content>(aPath8);
}
#else
- auto content = std::make_unique<orcus::file_content>(aPath8.getStr());
+ auto content = std::make_unique<orcus::file_content>(aPath8);
#endif
ScOrcusFactory aFactory(rDoc);
ScOrcusStyles aStyles(aFactory);
- orcus::import_ods::read_styles(content->data(), content->size(), &aStyles);
+ orcus::import_ods::read_styles(content->str(), &aStyles);
}
catch (const std::exception& e)
{
diff --git a/sc/source/filter/orcus/xmlcontext.cxx b/sc/source/filter/orcus/xmlcontext.cxx
index 1f3ee58220a0..9c73a75436bf 100644
--- a/sc/source/filter/orcus/xmlcontext.cxx
+++ b/sc/source/filter/orcus/xmlcontext.cxx
@@ -63,7 +63,7 @@ OUString toString(const orcus::xml_structure_tree::entity_name& entity, const or
aBuf.appendAscii(aShortName.c_str());
aBuf.append(':');
}
- aBuf.append(OUString(entity.name.get(), entity.name.size(), RTL_TEXTENCODING_UTF8));
+ aBuf.append(OUString(entity.name.data(), entity.name.size(), RTL_TEXTENCODING_UTF8));
return aBuf.makeStringAndClear();
}
@@ -175,7 +175,7 @@ void ScOrcusXMLContextImpl::loadXMLStructure(weld::TreeView& rTreeCtrl, ScOrcusX
orcus::xml_structure_tree aXmlTree(cxt);
try
{
- aXmlTree.parse(&aStrm[0], aStrm.size());
+ aXmlTree.parse(aStrm);
TreeUpdateSwitch aSwitch(rTreeCtrl);
rTreeCtrl.clear();
@@ -265,14 +265,14 @@ void ScOrcusXMLContextImpl::importXML(const ScOrcusImportXMLParam& rParam)
std::for_each(rLink.maFieldPaths.begin(), rLink.maFieldPaths.end(),
[&filter](const OString& rFieldPath)
{
- filter.append_field_link(rFieldPath.getStr(), orcus::pstring());
+ filter.append_field_link(rFieldPath, std::string_view());
}
);
std::for_each(rLink.maRowGroups.begin(), rLink.maRowGroups.end(),
[&filter] (const OString& rRowGroup)
{
- filter.set_range_row_group(rRowGroup.getStr());
+ filter.set_range_row_group(rRowGroup);
}
);
@@ -280,7 +280,7 @@ void ScOrcusXMLContextImpl::importXML(const ScOrcusImportXMLParam& rParam)
}
orcus::file_content content(path);
- filter.read_stream(content.data(), content.size());
+ filter.read_stream(content.str());
aFactory.finalize();
}