Language
Edit

DataCollectionItemPlacerGOBase Class

Definition

A data collection item placer base implementation that supports paging.

public abstract class DataCollectionItemPlacerGOBase : UnityEngine.MonoBehaviour, MixedReality.Toolkit.Data.IDataCollectionItemPlacer
type DataCollectionItemPlacerGOBase = class
    inherit MonoBehaviour
    interface IDataCollectionItemPlacer
Public MustInherit Class DataCollectionItemPlacerGOBase
Inherits MonoBehaviour
Implements IDataCollectionItemPlacer
Inheritance
UnityEngine.MonoBehaviour
DataCollectionItemPlacerGOBase
Derived
Implements

Remarks

This is a base object that can be derived from to support more complex scenarios.

A typical item placer will populate a UX element designed to present lists or grids of items, and typically also supports paging and/or scrolling for larger lists.

Constructors

Name Description
DataCollectionItemPlacerGOBase()

Fields

Name Description
_dataConsumerCollection
_firstVisibleItem
_itemsByState
_itemStateByIndex
_lastEventCollectionEmpty
_lastEventCollectionNotEmpty
_lastEventStateAtEnd
_lastEventStateAtStart
_lastEventStateCanGoBackward
_lastEventStateCanGoForward
_lastEventStateInMiddle
_lastRequestDirection
_lastRequestRangeCount
_lastRequestRangeStart
_numVisibleItems
_totalItemCount
collectionEvents
debugMode
keepGameObjectsInIndexOrder
lastPageCanBePartial
requestRef

Methods

Name Description
AddItem(DataCollectionItemPlacerGOBase+State, Int32, String, GameObject)
Attach()

Item placer is going into attached state either after initialization or after being dormant in game object pool.

AttachItemPlacer()

Perform additional attach prep in derived class.

ChangeItemState(Int32, DataCollectionItemPlacerGOBase+State)
CheckAndFixVisibleRange()
CheckForEventsToTrigger()
Detach()

Item placer is going into detached state either before returning in game object pool or destroy

DetachItemPlacer()

Perform additional detach teardown in derived class.

EndPlacement()

End placement for the requested range of game objects

FindItem(Int32)
FindNearestCollectionEvents()

Search through game object hierarchy for the nearest IDataCollectionEvents implementation.

FindOrderedInsertPoint(Transform, Int32)
GetFirstVisibleItem()

Get the list index of the first visible item

GetItemCountPerPage()

Get nominal number of items per logical page.

GetMaxVisibleItemCount()
GetPageNumber()

Get current page number for first visible item.

GetTotalItemCount()

Get the total number of items in the collection.

GetTotalPageCount()

Get the total number of pages in the collection based on current page size.

IsAtEnd()

Are visible items at the end of list

IsAtStart()

Are visible items at beginning of list

IsInteger(Object)
IsVisible(Int32)

Item is currently in the visible range of items

ItemExists(Int32)
MoveAbsolute(Int32, Boolean)

Scroll visible data window to the specified first visible item

MoveRelative(Int32, Boolean)

Scroll visible data window by itemCount items forward or backward

MoveToNextItem()

Scroll forward one item if possible.

MoveToPreviousItem()

Scroll back one item if possible.

NotifyCollectionDataChanged(DataChangeType, String, Object)

Notification that the collection being managed by the data consumer for this object has changed.

PageBackward()

Scroll back one page if possible, or to beginning if partial page.

PageForward()

Scroll forward one page if possible, or to end of list if partial page.

PlaceItem(Object, Int32, String, GameObject)

Place a game object into the experience previously requested via IDataConsumer.RequestCollectionItems()

PredictivelyLoadItems()
ProcessReceivedItem(Object, Int32, String, GameObject, Boolean)

Place a visible item into the experience

ProcessRemovedItem(Object, Int32, String, GameObject, Boolean)

Process the removal of an item that is no longer in the collection

PurgeAllItems()
PurgeAllRemovableGameObjects()

Purge all game objects that have been queued for removal.

PurgeAllVisibleAndRemovableItems()
PurgePrefetchedItems()
PurgeRemovableGameObjectRange(Int32, Int32)

Purge a range of game objects that have been queued for removal.

QueueGameObjectsForRemoval(Int32, Int32) UnityEngine.MonoBehaviour.QueueGameObjectsForRemoval(System.Int32,System.Int32)
RemoveItem(Int32)
RepositionItems(Int32, Int32)
RequestAnyMissingVisibleItems()
RequestItems(Int32, Int32)
SetDataConsumerCollection(IDataConsumerCollection)

Set the data consumer collection that is providing items for this item placer.

ShouldBeVisible(Int32)

Item is or would be visible if there were enough items to be shown.

StartPlacement()

Start placement for the requested range of game objects.

StashOrReturnItem(DataCollectionItemPlacerGOBase+ItemInfo)
UpdateItem(Int32, DataCollectionItemPlacerGOBase+State, String, GameObject)

Applies to