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 92 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 387 of file olinetab.cxx.
References aCollections, and nDepth.
Referenced by DeleteSpace(), and Remove().
Definition at line 640 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 745 of file olinetab.cxx.
References aCollections.
Definition at line 583 of file olinetab.cxx.
References aCollections, ScOutlineEntry::GetEnd(), ScOutlineEntry::GetStart(), and nDepth.
Referenced by ScOutlineDocFunc::HideMarkedOutlines().
Definition at line 724 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 300 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 470 of file olinetab.cxx.
References aCollections, nDepth, and ScOutlineCollection::size().
Referenced by ScXMLExport::FillFieldGroup(), ScOutlineDocFunc::HideMarkedOutlines(), ScOutlineWindow::ImplMoveFocusByEntry(), ScOutlineWindow::ItemHit(), and ScOutlineWindow::Paint().
|
inline |
Definition at line 111 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 442 of file olinetab.cxx.
References aCollections, ScOutlineCollection::begin(), nDepth, and ScOutlineCollection::size().
Referenced by 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 456 of file olinetab.cxx.
References aCollections, ScOutlineCollection::begin(), nDepth, and ScOutlineCollection::size().
const ScOutlineEntry * ScOutlineArray::GetEntryByPos | ( | size_t | nLevel, |
SCCOLROW | nPos | ||
) | const |
Definition at line 478 of file olinetab.cxx.
References aCollections, ScOutlineCollection::begin(), ScOutlineCollection::end(), ScOutlineEntry::GetEnd(), ScOutlineEntry::GetStart(), and nDepth.
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 495 of file olinetab.cxx.
References aCollections, ScOutlineCollection::begin(), ScOutlineCollection::end(), ScOutlineEntry::GetEnd(), ScOutlineEntry::GetStart(), nDepth, and p.
Referenced by ScOutlineWindow::ImplMoveFocusByLevel().
bool ScOutlineArray::GetEntryIndexInRange | ( | size_t | nLevel, |
SCCOLROW | nBlockStart, | ||
SCCOLROW | nBlockEnd, | ||
size_t & | rnIndex | ||
) | const |
Definition at line 515 of file olinetab.cxx.
References aCollections, ScOutlineCollection::begin(), ScOutlineCollection::end(), ScOutlineEntry::GetEnd(), ScOutlineEntry::GetStart(), nDepth, and p.
Referenced by ScOutlineWindow::ImplMoveFocusByLevel().
Definition at line 569 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, nPos, SC_OL_MAXDEPTH, and ScOutlineEntry::SetVisible().
Referenced by ScTable::DoAutoOutline(), ScXMLTableColsContext::endFastElement(), ScXMLTableRowsContext::endFastElement(), ScOutlineDocFunc::MakeOutline(), XclImpOutlineBuffer::MakeScOutline(), and ScConsData::OutputToDocument().
Definition at line 617 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 682 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 327 of file olinetab.cxx.
References aCollections, ScOutlineCollection::begin(), ScOutlineCollection::end(), ScOutlineCollection::erase(), ScOutlineEntry::GetEnd(), ScOutlineEntry::GetStart(), ScOutlineCollection::insert(), nDepth, and nPos.
Referenced by Remove().
Definition at line 409 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 716 of file olinetab.cxx.
References aCollections, and nDepth.
Referenced by ScDBDocFunc::DoSubTotals().
void ScOutlineArray::SetVisibleBelow | ( | size_t | nLevel, |
size_t | nEntry, | ||
bool | bValue, | ||
bool | bSkipHidden = false |
||
) |
Definition at line 536 of file olinetab.cxx.
References aCollections, ScOutlineEntry::GetEnd(), GetEntry(), ScOutlineEntry::GetStart(), ScOutlineEntry::IsHidden(), nDepth, nPos, p, and ScOutlineEntry::SetVisible().
Referenced by finalizeImport(), ScOutlineDocFunc::HideOutline(), ManualAction(), and ScOutlineDocFunc::ShowOutline().
Definition at line 605 of file olinetab.cxx.
References aCollections, ScOutlineCollection::begin(), ScOutlineCollection::empty(), and ScOutlineCollection::size().
Referenced by ScOutlineTable::TestInsertCol(), and ScOutlineTable::TestInsertRow().
|
friend |
Definition at line 94 of file olinetab.hxx.
|
private |
Definition at line 98 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 97 of file olinetab.hxx.
Referenced by DecDepth(), ExtendBlock(), FindEntry(), FindTouchedLevel(), GetCount(), GetEntry(), GetEntryByPos(), GetEntryIndex(), GetEntryIndexInRange(), Insert(), PromoteSub(), RemoveAll(), ScOutlineArray(), ScSubOutlineIterator::ScSubOutlineIterator(), and SetVisibleBelow().