ListView
- Base:
- UCommonListView
- Type:
- UNListView
- Header File:
- NexusUI/Public/Components/NListView.h
A UCommonListView subclass that invokes INListViewEntry::SetOwnerListView on each generated entry widget. Entry widgets that implement the interface are handed back a typed pointer to their owning list, which is the missing piece needed to talk to sibling rows or query selection state from inside an entry.
Also exposes a weak ReferenceObject slot so an outer object can be stashed on the list and retrieved from inside entry widgets — useful when a row needs to bind to a view-model without each row having to look it up independently.
What It Is​
- Owner-Aware Entries: The
OnGenerateEntryWidgetInternaloverride checks whether the new widget implements INListViewEntry and, if so, callsSetOwnerListViewon it. Native implementers receive the call directly; Blueprint-only implementers receiveOnSetOwnerListViewviaExecute_*. - Reference Slot: A
TWeakObjectPtr<UObject>field surfaced asGet/SetReferenceObject. The weak handle means a stashed reference does not keep the outer object alive — entries must check fornullptrbefore using it.
API​
Set Reference Object​
/** Stash an arbitrary outer reference on the list so entries can retrieve it during construction. */
UFUNCTION(BlueprintCallable)
void SetReferenceObject(UObject* Object);
Get Reference Object​
/** @return the previously-stashed reference object, or nullptr if it has been GC'd. */
UFUNCTION(BlueprintCallable)
UObject* GetReferenceObject() const;
Usage​
The shipped overlays use UNListView heavily — see UNActorPoolListViewEntry and UNDynamicRefListViewEntry for entries that take advantage of SetOwnerListView to call back into their host. The simpler UNButtonListViewEntry and UNTextListViewEntry widgets are reusable rows you can drop into any UNListView.