Lines Matching refs:item

54 		BListItem* item = (BListItem*)sourceList.ItemAt(i);
55 if (item->OutlineLevel() <= parent->OutlineLevel())
57 destList.AddItem(item);
66 BListItem* item = (BListItem*)list.ItemAt(firstIndex);
71 int32 newIndex = list.IndexOf(item);
109 BListItem* item = dynamic_cast<BListItem*>(object);
110 if (item)
111 AddItem(item);
146 BListItem* item = NULL;
147 while ((item = static_cast<BListItem*>(fFullList.ItemAt(i++)))) {
149 status = item->Archive(&subData, true);
176 BListItem* item = ItemAt(index);
178 if (item->fHasSubitems
179 && LatchRect(ItemFrame(index), item->fLevel).Contains(where)) {
180 if (item->IsExpanded())
181 Collapse(item);
183 Expand(item);
198 BListItem* item = ItemAt(currentSel);
199 if (item && item->fHasSubitems) {
200 if (!item->IsExpanded())
201 Expand(item);
212 BListItem* item = ItemAt(currentSel);
213 if (item) {
214 if (item->fHasSubitems && item->IsExpanded())
215 Collapse(item);
217 item = Superitem(item);
218 if (item) {
219 Select(IndexOf(item));
255 BOutlineListView::AddUnder(BListItem* item, BListItem* superItem)
258 return AddItem(item);
260 fFullList.AddItem(item, FullListIndexOf(superItem) + 1);
262 item->fLevel = superItem->OutlineLevel() + 1;
266 item->SetItemVisible(true);
270 BListView::AddItem(item, index + 1);
273 item->SetItemVisible(false);
280 BOutlineListView::AddItem(BListItem* item)
282 return AddItem(item, FullListCountItems());
287 BOutlineListView::AddItem(BListItem* item, int32 fullListIndex)
294 if (!fFullList.AddItem(item, fullListIndex))
297 // Check if this item is visible, and if it is, add it to the
300 if (item->fLevel > 0) {
301 BListItem* super = _SuperitemForIndex(fullListIndex, item->fLevel);
309 item->SetItemVisible(false);
321 if (!BListView::AddItem(item, IndexOf(FullListItemAt(listIndex)) + 1)) {
352 BOutlineListView::RemoveItem(BListItem* item)
354 return _RemoveItem(item, FullListIndexOf(item)) != NULL;
401 BOutlineListView::FullListIndexOf(BListItem* item) const
403 return fFullList.IndexOf(item);
422 BOutlineListView::FullListHasItem(BListItem* item) const
424 return fFullList.HasItem(item);
440 BListItem* item = BListView::ItemAt(i);
441 if (item)
442 return fFullList.IndexOf(item);
464 BOutlineListView::FullListDoForEach(bool(*func)(BListItem* item))
471 BOutlineListView::FullListDoForEach(bool (*func)(BListItem* item, void* arg),
479 BOutlineListView::Superitem(const BListItem* item)
481 int32 index = FullListIndexOf((BListItem*)item);
485 return _SuperitemForIndex(index, item->OutlineLevel());
490 BOutlineListView::Expand(BListItem* item)
492 ExpandOrCollapse(item, true);
497 BOutlineListView::Collapse(BListItem* item)
499 ExpandOrCollapse(item, false);
506 BListItem* item = FullListItemAt(fullListIndex);
507 if (!item)
510 return item->IsExpanded();
601 // The item itself does not take his OutlineLevel into account, so
707 BListItem* item = FullListItemAt(i);
710 if (item->fLevel < baseLevel)
714 if (!oneLevelOnly || item->fLevel == baseLevel)
724 BListItem* (*eachFunc)(BListItem* item, void* arg), void* arg)
732 BListItem* item = FullListItemAt(i);
735 if (item->fLevel < baseLevel)
739 if (!oneLevelOnly || item->fLevel == baseLevel) {
740 item = eachFunc(item, arg);
741 if (item != NULL)
742 return item;
762 BListItem* item = FullListItemAt(i);
765 if (item->fLevel < baseLevel)
769 if (!oneLevelOnly || item->fLevel == baseLevel) {
771 return item;
807 BOutlineListView::ExpandOrCollapse(BListItem* item, bool expand)
809 if (item->IsExpanded() == expand || !FullListHasItem(item))
812 item->fExpanded = expand;
817 uint32 level = item->fLevel;
818 int32 fullListIndex = FullListIndexOf(item);
819 int32 index = IndexOf(item) + 1;
827 item = items[0];
828 if (item->fLevel <= level)
831 if (!item->IsItemVisible()) {
838 fList.AddItem(item, index++);
839 item->Update(this, &font);
840 item->SetItemVisible(true);
843 if (item->HasSubitems() && !item->IsExpanded()) {
845 uint32 subLevel = item->fLevel;
858 const uint32 level = item->fLevel;
859 const int32 fullListIndex = FullListIndexOf(item);
860 const int32 index = IndexOf(item);
868 item = items[0];
869 if (item->fLevel <= level)
872 if (item->IsItemVisible()) {
873 fList.RemoveItem(item);
874 item->SetItemVisible(false);
875 if (item->IsSelected()) {
877 item->Deselect();
887 // if the selected item was just removed by collapsing, select its
954 BOutlineListView::DrawItem(BListItem* item, BRect itemRect, bool complete)
956 if (item->fHasSubitems) {
957 DrawLatch(itemRect, item->fLevel, !item->IsExpanded(),
958 item->IsSelected() || complete, false);
961 itemRect.left += LatchRect(itemRect, item->fLevel).right;
962 BListView::DrawItem(item, itemRect, complete);
969 BListItem* item = ItemAt(index);
971 if (item == NULL)
974 return FullListIndexOf(item);
986 BListItem* item = (BListItem*)tree->ItemAtFast(index);
988 items[firstIndex++] = item;
990 if (item->HasSubitems() && (!onlyVisible || item->IsExpanded())) {
991 _PopulateTree(item->fTemporaryList, target, firstIndex,
1010 BListItem* item = (BListItem*)tree->ItemAt(index);
1012 if (item->HasSubitems())
1013 _SortTree(item->fTemporaryList, false, compareFunc);
1022 BListItem* item = (BListItem*)tree->ItemAt(index);
1024 if (item->HasSubitems())
1025 _DestructTree(item->fTemporaryList);
1042 BListItem* item = FullListItemAt(fullListIndex);
1045 if (item->fLevel < level)
1050 list->AddItem(item);
1053 if (item->HasSubitems()) {
1055 _BuildTree(item, fullListIndex);
1079 // same item, do nothing
1083 // fail, first item out of bounds
1087 // fail, second item out of bounds
1123 /*! \brief Removes a single item from the list and all of its children.
1131 BOutlineListView::_RemoveItem(BListItem* item, int32 fullListIndex)
1133 if (item == NULL || fullListIndex < 0
1138 uint32 level = item->OutlineLevel();
1142 if (item->IsItemVisible()) {
1156 BListView::RemoveItem(item);
1168 return item;
1172 /*! Returns the super item before the item specified by \a fullListIndex
1179 BListItem* item;
1183 if ((item = FullListItemAt(fullListIndex))->OutlineLevel()
1187 return item;