LibreOffice Module sc (master) 1
|
#include <olinetab.hxx>
Public Member Functions | |
ScOutlineArray () | |
ScOutlineArray (const ScOutlineArray &rArray) | |
size_t | GetDepth () const |
bool | FindTouchedLevel (SCCOLROW nBlockStart, SCCOLROW nBlockEnd, size_t &rFindLevel) const |
bool | Insert (SCCOLROW nStartPos, SCCOLROW nEndPos, bool &rSizeChanged, bool bHidden=false) |
bool | Remove (SCCOLROW nBlockStart, SCCOLROW nBlockEnd, bool &rSizeChanged) |
ScOutlineEntry * | GetEntry (size_t nLevel, size_t nIndex) |
const ScOutlineEntry * | GetEntry (size_t nLevel, size_t nIndex) const |
size_t | GetCount (size_t nLevel) const |
const ScOutlineEntry * | GetEntryByPos (size_t nLevel, SCCOLROW nPos) const |
bool | GetEntryIndex (size_t nLevel, SCCOLROW nPos, size_t &rnIndex) const |
bool | GetEntryIndexInRange (size_t nLevel, SCCOLROW nBlockStart, SCCOLROW nBlockEnd, size_t &rnIndex) const |
void | SetVisibleBelow (size_t nLevel, size_t nEntry, bool bValue, bool bSkipHidden=false) |
void | GetRange (SCCOLROW &rStart, SCCOLROW &rEnd) const |
void | ExtendBlock (size_t nLevel, SCCOLROW &rBlkStart, SCCOLROW &rBlkEnd) |
bool | TestInsertSpace (SCSIZE nSize, SCCOLROW nMaxVal) const |
void | InsertSpace (SCCOLROW nStartPos, SCSIZE nSize) |
bool | DeleteSpace (SCCOLROW nStartPos, SCSIZE nSize) |
bool | ManualAction (SCCOLROW nStartPos, SCCOLROW nEndPos, bool bShow, const ScTable &rTable, bool bCol) |
void | finalizeImport (const ScTable &rTable) |
void | RemoveAll () |
OString | dumpAsString () const |
Private Member Functions | |
bool | DecDepth () |
Adapt nDepth for empty Levels. More... | |
void | FindEntry (SCCOLROW nSearchPos, size_t &rFindLevel, size_t &rFindIndex, size_t nMaxLevel=SC_OL_MAXDEPTH) |
void | PromoteSub (SCCOLROW nStartPos, SCCOLROW nEndPos, size_t nStartLevel) |
Private Attributes | |
size_t | nDepth |
ScOutlineCollection | aCollections [SC_OL_MAXDEPTH] |
Friends | |
class | ScSubOutlineIterator |
Definition at line 91 of file olinetab.hxx.
ScOutlineArray::ScOutlineArray | ( | ) |
Definition at line 154 of file olinetab.cxx.
ScOutlineArray::ScOutlineArray | ( | const ScOutlineArray & | rArray | ) |
Definition at line 157 of file olinetab.cxx.
References aCollections, ScOutlineCollection::insert(), and nDepth.
|
private |
Adapt nDepth for empty Levels.
Definition at line 373 of file olinetab.cxx.
References aCollections, and nDepth.
Referenced by DeleteSpace(), and Remove().
Definition at line 626 of file olinetab.cxx.
References DecDepth(), ScSubOutlineIterator::DeleteLast(), ScOutlineEntry::GetEnd(), ScSubOutlineIterator::GetNext(), ScOutlineEntry::GetSize(), ScOutlineEntry::GetStart(), ScOutlineEntry::Move(), ScOutlineEntry::SetPosSize(), and ScOutlineEntry::SetSize().
Referenced by ScOutlineTable::DeleteCol(), and ScOutlineTable::DeleteRow().
OString ScOutlineArray::dumpAsString | ( | ) | const |
Definition at line 731 of file olinetab.cxx.
References aCollections.
Definition at line 569 of file olinetab.cxx.
References aCollections, ScOutlineEntry::GetEnd(), ScOutlineEntry::GetStart(), and nDepth.
Referenced by ScOutlineDocFunc::HideMarkedOutlines().
void ScOutlineArray::finalizeImport | ( | const ScTable & | rTable | ) |
Definition at line 710 of file olinetab.cxx.
References ScOutlineEntry::GetEnd(), ScSubOutlineIterator::GetNext(), ScOutlineEntry::GetStart(), ScOutlineEntry::IsHidden(), ScSubOutlineIterator::LastEntry(), ScTable::LastHiddenColRow(), ScSubOutlineIterator::LastLevel(), ScOutlineEntry::SetHidden(), and SetVisibleBelow().
|
private |
Definition at line 171 of file olinetab.cxx.
References aCollections, ScOutlineEntry::GetEnd(), ScOutlineEntry::GetStart(), nDepth, and nIndex.
Referenced by Insert().
bool ScOutlineArray::FindTouchedLevel | ( | SCCOLROW | nBlockStart, |
SCCOLROW | nBlockEnd, | ||
size_t & | rFindLevel | ||
) | const |
Definition at line 296 of file olinetab.cxx.
References aCollections, ScOutlineEntry::GetEnd(), ScOutlineEntry::GetStart(), and nDepth.
Referenced by ScOutlineDocFunc::HideMarkedOutlines(), Remove(), and XclExpOutlineBuffer::UpdateColRow().
size_t ScOutlineArray::GetCount | ( | size_t | nLevel | ) | const |
Definition at line 456 of file olinetab.cxx.
References aCollections, nDepth, and ScOutlineCollection::size().
Referenced by ScXMLTableContext::endFastElement(), ScXMLExport::FillFieldGroup(), ScOutlineDocFunc::HideMarkedOutlines(), ScOutlineWindow::ImplMoveFocusByEntry(), ScOutlineWindow::ItemHit(), and ScOutlineWindow::Paint().
|
inline |
Definition at line 110 of file olinetab.hxx.
References ScSubOutlineIterator::nDepth.
Referenced by ScOutlineDocFunc::AutoOutline(), ScDBFunc::DoSubTotals(), ScXMLTableContext::endFastElement(), ScXMLExport::FillFieldGroup(), ScOutlineWindow::GetLevelCount(), ScTabView::getRowColumnHeaders(), ScOutlineDocFunc::RemoveAllOutlines(), and XclExpGuts::XclExpGuts().
ScOutlineEntry * ScOutlineArray::GetEntry | ( | size_t | nLevel, |
size_t | nIndex | ||
) |
Definition at line 428 of file olinetab.cxx.
References aCollections, ScOutlineCollection::begin(), nDepth, nIndex, and ScOutlineCollection::size().
Referenced by ScXMLTableContext::endFastElement(), ScXMLExport::FillFieldGroup(), ScOutlineWindow::GetOutlineEntry(), ScOutlineDocFunc::HideMarkedOutlines(), ScOutlineDocFunc::HideOutline(), ScOutlineWindow::ImplMoveFocusByLevel(), ScOutlineWindow::ItemHit(), ScOutlineWindow::Paint(), SetVisibleBelow(), and ScOutlineDocFunc::ShowOutline().
const ScOutlineEntry * ScOutlineArray::GetEntry | ( | size_t | nLevel, |
size_t | nIndex | ||
) | const |
Definition at line 442 of file olinetab.cxx.
References aCollections, ScOutlineCollection::begin(), nDepth, nIndex, and ScOutlineCollection::size().
const ScOutlineEntry * ScOutlineArray::GetEntryByPos | ( | size_t | nLevel, |
SCCOLROW | nPos | ||
) | const |
Definition at line 464 of file olinetab.cxx.
References aCollections, ScOutlineCollection::begin(), ScOutlineCollection::end(), nDepth, and nPos.
Referenced by ScVbaRange::getShowDetail(), ScOutlineDocFunc::SelectLevel(), XclExpOutlineBuffer::UpdateColRow(), and XclExpOutlineBuffer::XclExpOutlineBuffer().
bool ScOutlineArray::GetEntryIndex | ( | size_t | nLevel, |
SCCOLROW | nPos, | ||
size_t & | rnIndex | ||
) | const |
Definition at line 481 of file olinetab.cxx.
References aCollections, ScOutlineCollection::begin(), ScOutlineCollection::end(), nDepth, and nPos.
Referenced by ScOutlineWindow::ImplMoveFocusByLevel().
bool ScOutlineArray::GetEntryIndexInRange | ( | size_t | nLevel, |
SCCOLROW | nBlockStart, | ||
SCCOLROW | nBlockEnd, | ||
size_t & | rnIndex | ||
) | const |
Definition at line 501 of file olinetab.cxx.
References aCollections, ScOutlineCollection::begin(), ScOutlineCollection::end(), and nDepth.
Referenced by ScOutlineWindow::ImplMoveFocusByLevel().
Definition at line 555 of file olinetab.cxx.
References aCollections, ScOutlineCollection::begin(), ScOutlineCollection::empty(), and ScOutlineCollection::size().
Referenced by ScOutlineDocFunc::AutoOutline(), ScDBFunc::DoSubTotals(), ScDBDocFunc::DoSubTotals(), ScOutlineDocFunc::RemoveAllOutlines(), ScDBFunc::RepeatDB(), ScDBDocFunc::RepeatDB(), ScOutlineDocFunc::SelectLevel(), and XclExpCellTable::XclExpCellTable().
bool ScOutlineArray::Insert | ( | SCCOLROW | nStartPos, |
SCCOLROW | nEndPos, | ||
bool & | rSizeChanged, | ||
bool | bHidden = false |
||
) |
Definition at line 197 of file olinetab.cxx.
References aCollections, ScOutlineCollection::begin(), ScOutlineCollection::end(), ScOutlineCollection::erase(), FindEntry(), ScOutlineEntry::GetStart(), ScOutlineCollection::insert(), nDepth, SC_OL_MAXDEPTH, and ScOutlineEntry::SetVisible().
Referenced by ScTable::DoAutoOutline(), ScXMLTableColsContext::endFastElement(), ScXMLTableRowsContext::endFastElement(), ScOutlineDocFunc::MakeOutline(), XclImpOutlineBuffer::MakeScOutline(), and ScConsData::OutputToDocument().
Definition at line 603 of file olinetab.cxx.
References ScOutlineEntry::GetEnd(), ScSubOutlineIterator::GetNext(), ScOutlineEntry::GetSize(), ScOutlineEntry::GetStart(), ScOutlineEntry::IsHidden(), ScOutlineEntry::Move(), and ScOutlineEntry::SetSize().
Referenced by ScOutlineTable::InsertCol(), and ScOutlineTable::InsertRow().
bool ScOutlineArray::ManualAction | ( | SCCOLROW | nStartPos, |
SCCOLROW | nEndPos, | ||
bool | bShow, | ||
const ScTable & | rTable, | ||
bool | bCol | ||
) |
Definition at line 668 of file olinetab.cxx.
References ScOutlineEntry::GetEnd(), ScSubOutlineIterator::GetNext(), ScOutlineEntry::GetStart(), ScOutlineEntry::IsHidden(), ScSubOutlineIterator::LastEntry(), ScTable::LastHiddenColRow(), ScSubOutlineIterator::LastLevel(), ScOutlineEntry::SetHidden(), and SetVisibleBelow().
|
private |
Definition at line 323 of file olinetab.cxx.
References aCollections, ScOutlineCollection::begin(), ScOutlineCollection::end(), ScOutlineCollection::erase(), ScOutlineEntry::GetEnd(), ScOutlineEntry::GetStart(), ScOutlineCollection::insert(), and nDepth.
Referenced by Remove().
Definition at line 395 of file olinetab.cxx.
References aCollections, ScOutlineCollection::begin(), DecDepth(), ScOutlineCollection::end(), ScOutlineCollection::erase(), ScOutlineCollection::FindStart(), FindTouchedLevel(), ScOutlineEntry::GetEnd(), ScOutlineEntry::GetStart(), and PromoteSub().
Referenced by ScDBFunc::DoSubTotals(), and ScOutlineDocFunc::RemoveOutline().
void ScOutlineArray::RemoveAll | ( | ) |
Definition at line 702 of file olinetab.cxx.
References aCollections, and nDepth.
void ScOutlineArray::SetVisibleBelow | ( | size_t | nLevel, |
size_t | nEntry, | ||
bool | bValue, | ||
bool | bSkipHidden = false |
||
) |
Definition at line 522 of file olinetab.cxx.
References aCollections, ScOutlineEntry::GetEnd(), GetEntry(), ScOutlineEntry::GetStart(), nDepth, nPos, p, and SetVisibleBelow().
Referenced by ScXMLTableContext::endFastElement(), finalizeImport(), ScOutlineDocFunc::HideOutline(), ManualAction(), SetVisibleBelow(), and ScOutlineDocFunc::ShowOutline().
Definition at line 591 of file olinetab.cxx.
References aCollections, ScOutlineCollection::begin(), ScOutlineCollection::empty(), and ScOutlineCollection::size().
Referenced by ScOutlineTable::TestInsertCol(), and ScOutlineTable::TestInsertRow().
|
friend |
Definition at line 93 of file olinetab.hxx.
|
private |
Definition at line 97 of file olinetab.hxx.
Referenced by DecDepth(), ScSubOutlineIterator::DeleteLast(), dumpAsString(), ExtendBlock(), FindEntry(), FindTouchedLevel(), GetCount(), GetEntry(), GetEntryByPos(), GetEntryIndex(), GetEntryIndexInRange(), ScSubOutlineIterator::GetNext(), GetRange(), Insert(), PromoteSub(), Remove(), RemoveAll(), ScOutlineArray(), ScSubOutlineIterator::ScSubOutlineIterator(), SetVisibleBelow(), and TestInsertSpace().
|
private |
Definition at line 96 of file olinetab.hxx.
Referenced by DecDepth(), ExtendBlock(), FindEntry(), FindTouchedLevel(), GetCount(), GetEntry(), GetEntryByPos(), GetEntryIndex(), GetEntryIndexInRange(), Insert(), PromoteSub(), RemoveAll(), ScOutlineArray(), ScSubOutlineIterator::ScSubOutlineIterator(), and SetVisibleBelow().