LibreOffice Module vcl (master) 1
|
#include <treelist.hxx>
Static Public Member Functions | |
static sal_uInt32 | GetRelPos (const SvTreeListEntry *pChild) |
Static Private Member Functions | |
static VCL_DLLPRIVATE void | SetListPositions (SvTreeListEntries &rEntries) |
Invalidate the cached position data to have them re-generated before the next access. More... | |
Private Attributes | |
SvListView & | mrOwnerListView |
sal_uInt32 | nEntryCount |
Link< SvTreeListEntry *, SvTreeListEntry * > | aCloneLink |
Link< const SvSortData &, sal_Int32 > | aCompareLink |
SvSortMode | eSortMode |
bool | bAbsPositionsValid |
bool | mbEnableInvalidate |
std::unique_ptr< SvTreeListEntry > | pRootItem |
Friends | |
class | SvListView |
Definition at line 64 of file treelist.hxx.
|
privatedelete |
|
delete |
SvTreeList::SvTreeList | ( | SvListView & | listView | ) |
Definition at line 62 of file treelist.cxx.
References bAbsPositionsValid, eSortMode, nEntryCount, None, and pRootItem.
SvTreeList::~SvTreeList | ( | ) |
Definition at line 72 of file treelist.cxx.
void SvTreeList::Broadcast | ( | SvListAction | nActionId, |
SvTreeListEntry * | pEntry1 = nullptr , |
||
SvTreeListEntry * | pEntry2 = nullptr , |
||
sal_uInt32 | nPos = 0 |
||
) |
Definition at line 76 of file treelist.cxx.
References SvListView::ModelNotification(), mrOwnerListView, and nPos.
Referenced by Clear(), Copy(), Insert(), InsertTree(), InvalidateEntry(), Move(), and Remove().
void SvTreeList::Clear | ( | ) |
Definition at line 120 of file treelist.cxx.
References Broadcast(), CLEARED, CLEARING, nEntryCount, and pRootItem.
SvTreeListEntry * SvTreeList::Clone | ( | SvTreeListEntry * | pEntry, |
sal_uInt32 & | nCloneCount | ||
) | const |
Definition at line 366 of file treelist.cxx.
References CloneChildren(), CloneEntry(), and SvTreeListEntry::m_Children.
Referenced by Copy().
|
private |
Definition at line 377 of file treelist.cxx.
References CloneChildren(), CloneEntry(), and SvTreeListEntry::m_Children.
Referenced by Clone(), and CloneChildren().
SvTreeListEntry * SvTreeList::CloneEntry | ( | SvTreeListEntry * | pSource | ) | const |
Definition at line 357 of file treelist.cxx.
References aCloneLink, Link< typename Arg, typename Ret >::Call(), SvTreeListEntry::Clone(), and Link< typename Arg, typename Ret >::IsSet().
Referenced by Clone(), and CloneChildren().
sal_Int32 SvTreeList::Compare | ( | const SvTreeListEntry * | pLeft, |
const SvTreeListEntry * | pRight | ||
) | const |
Definition at line 1343 of file treelist.cxx.
References SvSortData::pLeft, and SvSortData::pRight.
sal_uInt32 SvTreeList::Copy | ( | SvTreeListEntry * | pSource, |
SvTreeListEntry * | pTargetParent, | ||
sal_uInt32 | nListPos | ||
) |
Definition at line 271 of file treelist.cxx.
References bAbsPositionsValid, Broadcast(), Clone(), DBG_ASSERT, INSERTED_TREE, SvTreeListEntry::m_Children, nEntryCount, SvTreeListEntry::pParent, pRootItem, and SetListPositions().
void SvTreeList::EnableInvalidate | ( | bool | bEnable | ) |
Definition at line 999 of file treelist.cxx.
References mbEnableInvalidate.
Referenced by SalInstanceTreeView::freeze(), and SalInstanceTreeView::thaw().
SvTreeListEntry * SvTreeList::First | ( | ) | const |
Definition at line 460 of file treelist.cxx.
References nEntryCount, and pRootItem.
Referenced by SvImpLBox::EntryRemoved(), FirstSelected(), GetEntryAtAbsPos(), GetEntryAtVisPos(), GetVisibleCount(), SvImpLBox::KeyInput(), SvImpLBox::SelAllDestrAnch(), and SetAbsolutePositions().
SvTreeListEntry * SvTreeList::FirstChild | ( | SvTreeListEntry * | pParent | ) | const |
Definition at line 766 of file treelist.cxx.
References SvTreeListEntry::m_Children, and pRootItem.
|
private |
Definition at line 754 of file treelist.cxx.
References DBG_ASSERT, First(), SvListView::IsSelected(), and NextVisible().
|
inlineprivate |
Definition at line 79 of file treelist.hxx.
References First.
sal_uInt32 SvTreeList::GetAbsPos | ( | const SvTreeListEntry * | pEntry | ) | const |
Definition at line 821 of file treelist.cxx.
References bAbsPositionsValid, SvTreeListEntry::nAbsPos, and SetAbsolutePositions().
Referenced by IconView::DumpEntryAndSiblings(), SvImpLBox::EntryMoved(), IconViewUIObject::get_state(), SalInstanceTreeView::iter_compare(), and lcl_DumpEntryAndSiblings().
sal_uInt32 SvTreeList::GetChildCount | ( | const SvTreeListEntry * | pParent | ) | const |
Definition at line 397 of file treelist.cxx.
References GetDepth(), GetEntryCount(), SvTreeListEntry::m_Children, nCount, and Next().
Referenced by InsertTree(), and Remove().
SvTreeListEntries & SvTreeList::GetChildList | ( | SvTreeListEntry * | pParent | ) |
Definition at line 1481 of file treelist.cxx.
References SvTreeListEntry::m_Children.
const SvTreeListEntries & SvTreeList::GetChildList | ( | SvTreeListEntry * | pParent | ) | const |
Definition at line 1474 of file treelist.cxx.
References SvTreeListEntry::m_Children.
Referenced by SvImpLBox::CollapseTo(), SvImpLBox::EntryInserted(), SvImpLBox::FindMostRight_Impl(), SalInstanceTreeView::iter_n_children(), SalInstanceTreeView::n_children(), and SvImpLBox::RemovingEntry().
|
private |
Definition at line 438 of file treelist.cxx.
References DBG_ASSERT, GetDepth(), SvListView::IsSelected(), SvTreeListEntry::m_Children, nCount, Next(), and pRootItem.
|
inline |
Definition at line 190 of file treelist.hxx.
sal_uInt16 SvTreeList::GetDepth | ( | const SvTreeListEntry * | pEntry | ) | const |
Definition at line 103 of file treelist.cxx.
References DBG_ASSERT, SvTreeListEntry::pParent, and pRootItem.
Referenced by SvImpLBox::CollapseTo(), SvImpLBox::DrawNet(), SvImpLBox::ExpandAll(), SalInstanceTreeView::get_iter_depth(), GetChildCount(), GetChildSelectionCount(), and GetVisibleChildCount().
SvTreeListEntry * SvTreeList::GetEntry | ( | sal_uInt32 | nRootPos | ) | const |
Definition at line 1466 of file treelist.cxx.
References SvTreeListEntry::m_Children.
SvTreeListEntry * SvTreeList::GetEntry | ( | SvTreeListEntry * | pParent, |
sal_uInt32 | nPos | ||
) | const |
Definition at line 1457 of file treelist.cxx.
References SvTreeListEntry::m_Children, and nPos.
Referenced by SalInstanceTreeView::swap().
SvTreeListEntry * SvTreeList::GetEntryAtAbsPos | ( | sal_uInt32 | nAbsPos | ) | const |
Definition at line 966 of file treelist.cxx.
|
private |
Definition at line 977 of file treelist.cxx.
References DBG_ASSERT, First(), and NextVisible().
|
inline |
Definition at line 141 of file treelist.hxx.
Referenced by GetChildCount().
|
private |
Definition at line 1409 of file treelist.cxx.
References DBG_ASSERT, Descending, i, None, and TREELIST_ENTRY_NOTFOUND.
Referenced by Insert(), and InsertTree().
const SvTreeListEntry * SvTreeList::GetParent | ( | const SvTreeListEntry * | pEntry | ) | const |
Definition at line 1488 of file treelist.cxx.
References SvTreeListEntry::pParent.
Referenced by SvImpLBox::CollapseTo(), SvImpLBox::EntryInserted(), SvImpLBox::EntryMoved(), and SvImpLBox::RemovingEntry().
SvTreeListEntry * SvTreeList::GetParent | ( | SvTreeListEntry * | pEntry | ) |
Definition at line 1496 of file treelist.cxx.
References SvTreeListEntry::pParent.
|
static |
Definition at line 828 of file treelist.cxx.
References SvTreeListEntry::GetChildListPos().
Referenced by SalInstanceTreeView::find_id(), SalInstanceTreeView::find_text(), SalInstanceTreeView::get_cursor_index(), SalInstanceTreeView::get_iter_index_in_parent(), SalInstanceTreeView::get_selected_index(), SalInstanceTreeView::get_selected_rows(), and SvTabListBox::GetTab().
|
inline |
Definition at line 196 of file treelist.hxx.
Referenced by SalInstanceTreeView::get_sort_order().
|
private |
Definition at line 417 of file treelist.cxx.
References DBG_ASSERT, GetDepth(), SvListView::IsExpanded(), SvTreeListEntry::m_Children, nCount, NextVisible(), and pRootItem.
|
private |
Definition at line 581 of file treelist.cxx.
References First(), SvListView::GetViewData(), SvListView::HasViewData(), SvListView::m_pImpl, NextVisible(), nPos, and SvViewDataEntry::nVisPos.
Referenced by GetVisiblePos().
|
private |
Definition at line 567 of file treelist.cxx.
References DBG_ASSERT, SvListView::GetViewData(), GetVisibleCount(), m_pImpl, SvListView::m_pImpl, and SvViewDataEntry::nVisPos.
Referenced by NextVisible(), and PrevVisible().
|
inline |
Definition at line 150 of file treelist.hxx.
References Insert().
sal_uInt32 SvTreeList::Insert | ( | SvTreeListEntry * | pEntry, |
SvTreeListEntry * | pPar, | ||
sal_uInt32 | nPos = TREELIST_APPEND |
||
) |
Definition at line 787 of file treelist.cxx.
References bAbsPositionsValid, Broadcast(), DBG_ASSERT, GetInsertionPos(), INSERTED, SvTreeListEntry::m_Children, nEntryCount, SvTreeListEntry::nListPos, nPos, SvTreeListEntry::pParent, pRootItem, SetListPositions(), and TREELIST_APPEND.
void SvTreeList::InsertTree | ( | SvTreeListEntry * | pTree, |
SvTreeListEntry * | pTargetParent, | ||
sal_uInt32 | nListPos | ||
) |
Definition at line 323 of file treelist.cxx.
References bAbsPositionsValid, Broadcast(), DBG_ASSERT, GetChildCount(), GetInsertionPos(), INSERTED_TREE, SvTreeListEntry::m_Children, nEntryCount, SvTreeListEntry::pParent, pRootItem, and SetListPositions().
void SvTreeList::InvalidateEntry | ( | SvTreeListEntry * | pEntry | ) |
Definition at line 1004 of file treelist.cxx.
References Broadcast(), INVALIDATE_ENTRY, and mbEnableInvalidate.
Referenced by SvImpLBox::EntryInserted(), SvTreeListBox::Expand(), SvTreeListBox::InvalidateEntry(), SalInstanceTreeView::queue_draw(), and SvTreeListBox::SetEntryText().
bool SvTreeList::IsAtRootDepth | ( | const SvTreeListEntry * | pEntry | ) | const |
Definition at line 115 of file treelist.cxx.
References SvTreeListEntry::pParent, and pRootItem.
Referenced by SvImpLBox::DrawNet().
bool SvTreeList::IsChild | ( | const SvTreeListEntry * | pParent, |
const SvTreeListEntry * | pChild | ||
) | const |
Definition at line 128 of file treelist.cxx.
References IsChild(), SvTreeListEntry::m_Children, and pRootItem.
Referenced by SvImpLBox::CollapsingEntry(), SvImpLBox::EntryCollapsed(), IsChild(), and SvImpLBox::RemovingEntry().
|
inline |
Definition at line 136 of file treelist.hxx.
Referenced by SalInstanceTreeView::InvalidateModelEntry().
|
private |
Definition at line 87 of file treelist.cxx.
References DBG_ASSERT, SvListView::IsExpanded(), SvTreeListEntry::pParent, and pRootItem.
Referenced by LastVisible(), NextVisible(), and PrevVisible().
SvTreeListEntry * SvTreeList::Last | ( | ) | const |
Definition at line 555 of file treelist.cxx.
References SvTreeListEntry::m_Children, and pRootItem.
Referenced by SvImpLBox::KeyInput(), IconViewImpl::KeyInput(), LastVisible(), and SvImpLBox::RemovingEntry().
|
private |
Definition at line 702 of file treelist.cxx.
References DBG_ASSERT, IsEntryVisible(), Last(), and PrevVisible().
void SvTreeList::Move | ( | SvTreeListEntry * | pSource, |
SvTreeListEntry * | pTarget | ||
) |
Definition at line 304 of file treelist.cxx.
References SvTreeListEntry::GetChildListPos(), Move(), nPos, SvTreeListEntry::pParent, and pRootItem.
Referenced by Move(), SalInstanceTreeView::move_subtree(), and SalInstanceTreeView::swap().
sal_uInt32 SvTreeList::Move | ( | SvTreeListEntry * | pSource, |
SvTreeListEntry * | pTargetParent, | ||
sal_uInt32 | nListPos | ||
) |
Definition at line 176 of file treelist.cxx.
References bAbsPositionsValid, Broadcast(), DBG_ASSERT, SvTreeListEntry::GetChildListPos(), SvTreeListEntry::m_Children, MOVED, MOVING, p, SvTreeListEntry::pParent, pRootItem, and SetListPositions().
SvTreeListEntry * SvTreeList::Next | ( | SvTreeListEntry * | pEntry, |
sal_uInt16 * | pDepth = nullptr |
||
) | const |
Definition at line 468 of file treelist.cxx.
References DBG_ASSERT, SvTreeListEntry::GetChildListPos(), SvTreeListEntry::m_Children, SvTreeListEntry::pParent, and pRootItem.
Referenced by SvImpLBox::CollapseTo(), SvImpLBox::ExpandAll(), GetChildCount(), GetChildSelectionCount(), GetEntryAtAbsPos(), NextSelected(), SvImpLBox::SelAllDestrAnch(), and SetAbsolutePositions().
|
private |
Definition at line 778 of file treelist.cxx.
References DBG_ASSERT, SvListView::IsSelected(), and Next().
|
private |
Definition at line 711 of file treelist.cxx.
References DBG_ASSERT, GetVisiblePos(), IsEntryVisible(), SvListView::m_pImpl, and NextVisible().
|
private |
Definition at line 612 of file treelist.cxx.
References DBG_ASSERT, SvTreeListEntry::GetChildListPos(), SvListView::IsExpanded(), SvTreeListEntry::m_Children, SvTreeListEntry::pParent, and pRootItem.
Referenced by FirstSelected(), GetEntryAtVisPos(), GetVisibleChildCount(), GetVisibleCount(), and NextVisible().
|
privatedelete |
SvTreeListEntry * SvTreeList::Prev | ( | SvTreeListEntry * | pEntry | ) | const |
Definition at line 526 of file treelist.cxx.
References DBG_ASSERT, SvTreeListEntry::GetChildListPos(), SvTreeListEntry::m_Children, SvTreeListEntry::pParent, and pRootItem.
|
private |
Definition at line 673 of file treelist.cxx.
References DBG_ASSERT, SvTreeListEntry::GetChildListPos(), SvListView::IsExpanded(), SvTreeListEntry::m_Children, SvTreeListEntry::pParent, and pRootItem.
Referenced by LastVisible(), and PrevVisible().
|
private |
Definition at line 734 of file treelist.cxx.
References DBG_ASSERT, GetVisiblePos(), IsEntryVisible(), and PrevVisible().
bool SvTreeList::Remove | ( | const SvTreeListEntry * | pEntry | ) |
Definition at line 911 of file treelist.cxx.
References bAbsPositionsValid, Broadcast(), DBG_ASSERT, GetChildCount(), SvTreeListEntry::GetChildListPos(), SvTreeListEntry::HasChildListPos(), SvTreeListEntry::m_Children, nEntryCount, SvTreeListEntry::pParent, REMOVED, REMOVING, and SetListPositions().
void SvTreeList::Resort | ( | ) |
Definition at line 1355 of file treelist.cxx.
References RESORTED, and RESORTING.
Referenced by SalInstanceTreeView::set_sort_column(), SalInstanceTreeView::set_sort_func(), and SalInstanceTreeView::set_sort_order().
|
private |
Definition at line 1389 of file treelist.cxx.
References DBG_ASSERT, and SvTreeListEntry::m_Children.
|
private |
Definition at line 833 of file treelist.cxx.
References bAbsPositionsValid, First(), SvTreeListEntry::nAbsPos, Next(), and nPos.
Referenced by GetAbsPos().
|
inline |
Definition at line 187 of file treelist.hxx.
|
inline |
Definition at line 198 of file treelist.hxx.
Referenced by SvTreeListBox::ImplInitStyle(), and SalInstanceTreeView::make_sorted().
|
staticprivate |
Invalidate the cached position data to have them re-generated before the next access.
Definition at line 989 of file treelist.cxx.
References SvTreeListEntry::InvalidateChildrensListPositions(), and SvTreeListEntry::pParent.
Referenced by Copy(), Insert(), InsertTree(), Move(), and Remove().
|
inline |
Definition at line 195 of file treelist.hxx.
References eMode.
Referenced by SvTreeListBox::ImplInitStyle(), and SalInstanceTreeView::set_sort_order().
|
friend |
Definition at line 66 of file treelist.hxx.
|
private |
Definition at line 71 of file treelist.hxx.
Referenced by CloneEntry().
|
private |
Definition at line 72 of file treelist.hxx.
|
private |
Definition at line 75 of file treelist.hxx.
Referenced by Copy(), GetAbsPos(), Insert(), InsertTree(), Move(), Remove(), SetAbsolutePositions(), and SvTreeList().
|
private |
Definition at line 73 of file treelist.hxx.
Referenced by SvTreeList().
|
private |
Definition at line 77 of file treelist.hxx.
Referenced by EnableInvalidate(), and InvalidateEntry().
|
private |
Definition at line 68 of file treelist.hxx.
Referenced by Broadcast().
|
private |
Definition at line 69 of file treelist.hxx.
Referenced by Clear(), Copy(), First(), Insert(), InsertTree(), Remove(), and SvTreeList().
|
private |
Definition at line 120 of file treelist.hxx.
Referenced by Clear(), Copy(), First(), FirstChild(), GetChildSelectionCount(), GetDepth(), GetVisibleChildCount(), Insert(), InsertTree(), IsAtRootDepth(), IsChild(), IsEntryVisible(), Last(), Move(), Next(), NextVisible(), Prev(), PrevVisible(), and SvTreeList().