LibreOffice Module sc (master)
1
|
Walk through all cells in an area. More...
#include <dociter.hxx>
Public Member Functions | |
ScCellIterator (ScDocument &rDoc, const ScRange &rRange, SubtotalFlags nSubTotalFlags=SubtotalFlags::NONE) | |
const ScAddress & | GetPos () const |
CellType | getType () const |
OUString | getString () const |
const EditTextObject * | getEditText () const |
ScFormulaCell * | getFormulaCell () |
const ScFormulaCell * | getFormulaCell () const |
ScCellValue | getCellValue () const |
const ScRefCellValue & | getRefCellValue () const |
bool | hasString () const |
bool | isEmpty () const |
bool | equalsWithoutFormat (const ScAddress &rPos) const |
bool | first () |
bool | next () |
Private Types | |
typedef std::pair< sc::CellStoreType::const_iterator, size_t > | PositionType |
Private Member Functions | |
void | incBlock () |
void | incPos () |
void | setPos (size_t nPos) |
const ScColumn * | getColumn () const |
void | init () |
bool | getCurrent () |
Private Attributes | |
ScDocument & | mrDoc |
ScAddress | maStartPos |
ScAddress | maEndPos |
ScAddress | maCurPos |
PositionType | maCurColPos |
SubtotalFlags | mnSubTotalFlags |
ScRefCellValue | maCurCell |
Walk through all cells in an area.
For SubTotal and Aggregate depending on mnSubTotalFlags.
Definition at line 208 of file dociter.hxx.
|
private |
Definition at line 210 of file dociter.hxx.
ScCellIterator::ScCellIterator | ( | ScDocument & | rDoc, |
const ScRange & | rRange, | ||
SubtotalFlags | nSubTotalFlags = SubtotalFlags::NONE |
||
) |
Definition at line 834 of file dociter.cxx.
References init().
bool ScCellIterator::equalsWithoutFormat | ( | const ScAddress & | rPos | ) | const |
Definition at line 1024 of file dociter.cxx.
References ScRefCellValue::equalsWithoutFormat(), maCurCell, and mrDoc.
Referenced by ScCellRangesBase::QueryDifferences_Impl().
bool ScCellIterator::first | ( | ) |
Definition at line 1030 of file dociter.cxx.
References getColumn(), getCurrent(), ScColumn::maCells, maCurColPos, maCurPos, maStartPos, ScAddress::Row(), ScAddress::Tab(), and ValidTab().
Referenced by ScChangeTrack::AppendContentsIfInRefDoc(), ScInterpreter::CreateMatrixFromDoubleRef(), ScViewFunc::DoRefConversion(), sc::SearchResultsDlg::FillResults(), ScDetectiveFunc::FindPredLevelArea(), ScDetectiveFunc::FindSuccLevel(), ScDetectiveFunc::GetAllPreds(), ScDetectiveFunc::GetAllSuccs(), ScDocument::GetFormulaEntries(), ScDetectiveFunc::HasError(), ScDocument::HasSubTotalCells(), ScDetectiveFunc::InsertPredLevelArea(), ScDetectiveFunc::InsertSuccLevel(), ScCompiler::IsColRowName(), ScCompiler::IsTableRefColumn(), ScInterpreter::IterateParameters(), lcl_HasErrors(), ScChangeTrack::LookUpContents(), ScDetectiveFunc::MarkInvalid(), ScCellRangesBase::queryContentCells(), ScCellRangesBase::queryDependents(), ScCellRangesBase::QueryDifferences_Impl(), ScCellRangesBase::queryEmptyCells(), ScCellRangesBase::queryFormulaCells(), ScCellRangesBase::queryPrecedents(), ScTableLink::Refresh(), ScInterpreter::ScCountEmptyCells(), and ScTransferObj::StripRefs().
ScCellValue ScCellIterator::getCellValue | ( | ) | const |
Definition at line 988 of file dociter.cxx.
References CELLTYPE_EDIT, CELLTYPE_FORMULA, CELLTYPE_STRING, CELLTYPE_VALUE, EditTextObject::Clone(), ScFormulaCell::Clone(), maCurCell, ScCellValue::meType, ScRefCellValue::meType, ScCellValue::mfValue, ScRefCellValue::mfValue, ScCellValue::mpEditText, ScRefCellValue::mpEditText, ScCellValue::mpFormula, ScRefCellValue::mpFormula, ScCellValue::mpString, and ScRefCellValue::mpString.
Referenced by ScChangeTrack::AppendContentsIfInRefDoc(), and ScChangeTrack::LookUpContents().
|
private |
Definition at line 870 of file dociter.cxx.
References ScAddress::Col(), maCurPos, ScDocument::maTabs, mrDoc, and ScAddress::Tab().
Referenced by first(), getCurrent(), and setPos().
|
private |
Definition at line 907 of file dociter.cxx.
References ScRefCellValue::clear(), ScAddress::Col(), sc::element_type_empty, sc::element_type_formula, ScDocument::GetAllocatedColumnsCount(), getColumn(), ScColumn::GetDoc(), ScFormulaCell::GetErrCode(), IgnoreErrVal, IgnoreFiltered, IgnoreHidden, IgnoreNestedStAg, incBlock(), ScAddress::IncCol(), incPos(), ScAddress::IncTab(), ScColumn::IsEmptyData(), ScFormulaCell::IsSubTotal(), ScColumn::maCells, maCurCell, maCurColPos, maCurPos, maEndPos, maStartPos, mnSubTotalFlags, mrDoc, NONE, ScAddress::Row(), ScDocument::RowFiltered(), ScDocument::RowHidden(), ScAddress::SetCol(), setPos(), ScAddress::SetRow(), ScAddress::Tab(), and sc::toRefCell().
|
inline |
Definition at line 238 of file dociter.hxx.
References ScRefCellValue::mpEditText.
|
inline |
Definition at line 239 of file dociter.hxx.
References ScRefCellValue::mpFormula.
Referenced by ScViewFunc::DoRefConversion(), ScDetectiveFunc::FindSuccLevel(), ScDetectiveFunc::GetAllPreds(), ScDetectiveFunc::GetAllSuccs(), ScDetectiveFunc::HasError(), ScDocument::HasSubTotalCells(), ScDetectiveFunc::InsertSuccLevel(), ScCompiler::IsColRowName(), ScCompiler::IsTableRefColumn(), lcl_HasErrors(), ScCellRangesBase::queryDependents(), ScCellRangesBase::queryFormulaCells(), ScCellRangesBase::queryPrecedents(), ScTableLink::Refresh(), and ScTransferObj::StripRefs().
|
inline |
Definition at line 240 of file dociter.hxx.
References ScRefCellValue::mpFormula.
|
inline |
Definition at line 234 of file dociter.hxx.
References maCurPos.
Referenced by ScChangeTrack::AppendContentsIfInRefDoc(), ScInterpreter::CreateMatrixFromDoubleRef(), ScViewFunc::DoRefConversion(), sc::SearchResultsDlg::FillResults(), ScDetectiveFunc::FindPredLevelArea(), ScDetectiveFunc::FindSuccLevel(), ScDetectiveFunc::GetAllPreds(), ScDetectiveFunc::GetAllSuccs(), ScDetectiveFunc::HasError(), ScDetectiveFunc::InsertPredLevelArea(), ScDetectiveFunc::InsertSuccLevel(), ScCompiler::IsColRowName(), ScCompiler::IsTableRefColumn(), ScChangeTrack::LookUpContents(), ScDetectiveFunc::MarkInvalid(), ScCellRangesBase::queryContentCells(), ScCellRangesBase::queryDependents(), ScCellRangesBase::QueryDifferences_Impl(), ScCellRangesBase::queryEmptyCells(), ScCellRangesBase::queryFormulaCells(), and ScTransferObj::StripRefs().
|
inline |
Definition at line 242 of file dociter.hxx.
References maCurCell.
Referenced by ScInterpreter::CreateMatrixFromDoubleRef(), ScChangeTrack::LookUpContents(), ScDetectiveFunc::MarkInvalid(), and ScInterpreter::ScCountEmptyCells().
OUString ScCellIterator::getString | ( | ) | const |
Definition at line 983 of file dociter.cxx.
References ScRefCellValue::getString(), maCurCell, and mrDoc.
Referenced by ScDocument::GetFormulaEntries(), ScCompiler::IsColRowName(), and ScCompiler::IsTableRefColumn().
|
inline |
Definition at line 236 of file dociter.hxx.
References ScRefCellValue::meType.
Referenced by ScViewFunc::DoRefConversion(), ScDetectiveFunc::FindPredLevelArea(), ScDetectiveFunc::FindSuccLevel(), ScDetectiveFunc::GetAllPreds(), ScDetectiveFunc::GetAllSuccs(), ScDetectiveFunc::HasError(), ScDocument::HasSubTotalCells(), ScDetectiveFunc::InsertPredLevelArea(), ScDetectiveFunc::InsertSuccLevel(), ScCompiler::IsColRowName(), ScCompiler::IsTableRefColumn(), lcl_HasErrors(), ScCellRangesBase::queryContentCells(), ScCellRangesBase::queryDependents(), ScCellRangesBase::queryFormulaCells(), ScCellRangesBase::queryPrecedents(), ScTableLink::Refresh(), and ScTransferObj::StripRefs().
bool ScCellIterator::hasString | ( | ) | const |
Definition at line 1014 of file dociter.cxx.
References ScRefCellValue::hasString(), and maCurCell.
Referenced by ScDocument::GetFormulaEntries(), ScCompiler::IsColRowName(), and ScCompiler::IsTableRefColumn().
|
private |
Definition at line 843 of file dociter.cxx.
References maCurColPos, maCurPos, and ScAddress::SetRow().
Referenced by getCurrent(), and incPos().
|
private |
Definition at line 851 of file dociter.cxx.
References incBlock(), ScAddress::IncRow(), maCurColPos, and maCurPos.
Referenced by getCurrent(), and next().
|
private |
Definition at line 875 of file dociter.cxx.
References assert(), ScAddress::Col(), ScDocument::GetTableCount(), ScAddress::IncTab(), maCurPos, maEndPos, maStartPos, ScDocument::maTabs, ScDocument::MaxCol(), ScDocument::MaxRow(), MAXTAB, mrDoc, PutInOrder(), ScAddress::Row(), ScAddress::SetCol(), ScAddress::SetRow(), ScAddress::SetTab(), ScAddress::Tab(), ScDocument::ValidCol(), ScDocument::ValidRow(), and ValidTab().
Referenced by ScCellIterator().
bool ScCellIterator::isEmpty | ( | ) | const |
Definition at line 1019 of file dociter.cxx.
References ScRefCellValue::isEmpty(), and maCurCell.
Referenced by ScInterpreter::CreateMatrixFromDoubleRef(), ScInterpreter::IterateParameters(), and ScCellRangesBase::queryEmptyCells().
bool ScCellIterator::next | ( | ) |
Definition at line 1042 of file dociter.cxx.
References getCurrent(), and incPos().
Referenced by ScChangeTrack::AppendContentsIfInRefDoc(), ScInterpreter::CreateMatrixFromDoubleRef(), ScViewFunc::DoRefConversion(), sc::SearchResultsDlg::FillResults(), ScDetectiveFunc::FindPredLevelArea(), ScDetectiveFunc::FindSuccLevel(), ScDetectiveFunc::GetAllPreds(), ScDetectiveFunc::GetAllSuccs(), ScDocument::GetFormulaEntries(), ScDetectiveFunc::HasError(), ScDocument::HasSubTotalCells(), ScDetectiveFunc::InsertPredLevelArea(), ScDetectiveFunc::InsertSuccLevel(), ScCompiler::IsColRowName(), ScCompiler::IsTableRefColumn(), ScInterpreter::IterateParameters(), lcl_HasErrors(), ScChangeTrack::LookUpContents(), ScDetectiveFunc::MarkInvalid(), ScCellRangesBase::queryContentCells(), ScCellRangesBase::queryDependents(), ScCellRangesBase::QueryDifferences_Impl(), ScCellRangesBase::queryEmptyCells(), ScCellRangesBase::queryFormulaCells(), ScCellRangesBase::queryPrecedents(), ScTableLink::Refresh(), ScInterpreter::ScCountEmptyCells(), and ScTransferObj::StripRefs().
|
private |
Definition at line 864 of file dociter.cxx.
References getColumn(), ScColumn::maCells, maCurColPos, maCurPos, and ScAddress::SetRow().
Referenced by getCurrent().
|
private |
Definition at line 220 of file dociter.hxx.
Referenced by equalsWithoutFormat(), getCellValue(), getCurrent(), getRefCellValue(), getString(), hasString(), and isEmpty().
|
private |
Definition at line 217 of file dociter.hxx.
Referenced by first(), getCurrent(), incBlock(), incPos(), and setPos().
|
private |
Definition at line 215 of file dociter.hxx.
Referenced by first(), getColumn(), getCurrent(), GetPos(), incBlock(), incPos(), init(), and setPos().
|
private |
Definition at line 214 of file dociter.hxx.
Referenced by getCurrent(), and init().
|
private |
Definition at line 213 of file dociter.hxx.
Referenced by first(), getCurrent(), and init().
|
private |
Definition at line 218 of file dociter.hxx.
Referenced by getCurrent().
|
private |
Definition at line 212 of file dociter.hxx.
Referenced by equalsWithoutFormat(), getColumn(), getCurrent(), getString(), and init().