LibreOffice Module sc (master)  1
mtvcellfunc.cxx
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3  * This Source Code Form is subject to the terms of the Mozilla Public
4  * License, v. 2.0. If a copy of the MPL was not distributed with this
5  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
6  */
7 
8 #include <mtvcellfunc.hxx>
9 
10 namespace sc {
11 
12 CellStoreType::iterator ProcessFormula(
13  const CellStoreType::iterator& it, CellStoreType& rStore, SCROW nRow1, SCROW nRow2,
14  std::function<void(size_t,ScFormulaCell*)> aFuncElem )
15 {
16  using FuncType = std::function<void(size_t,ScFormulaCell*)>;
17  using ElseFuncType = std::function<void(mdds::mtv::element_t, size_t, size_t)>;
18 
19  // empty function for handling the 'else' part.
20  static ElseFuncType aFuncElse =
21  [](mdds::mtv::element_t,size_t,size_t) {};
22 
23  return ProcessElements1<
25  FuncType, ElseFuncType>(
26  it, rStore, nRow1, nRow2, aFuncElem, aFuncElse);
27 }
28 
29 }
30 
31 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
mdds::multi_type_vector< CellFunc, CellStoreEvent > CellStoreType
mdds::mtv::noncopyable_managed_element_block< element_type_formula, ScFormulaCell > formula_block
Definition: mtvelements.hxx:66
CellStoreType::iterator ProcessFormula(const CellStoreType::iterator &it, CellStoreType &rStore, SCROW nRow1, SCROW nRow2, std::function< void(size_t, ScFormulaCell *)> aFuncElem)
Process formula cells found within specified row range.
Definition: mtvcellfunc.cxx:12
void ProcessElements1(StoreT &rStore, FuncElem &rFuncElem, FuncElse &rFuncElse)
sal_Int32 SCROW
Definition: types.hxx:18