Navigation
API > API/Plugins > API/Plugins/TedsTableViewer
A Basic TEDS Filter Bar widget, which can be used to filter items of type FTedsRowHandle given a list of custom filters
NOTE: The filter functions create copies, so you want to use a reference or pointer as the template type when possible Sample Usage: SAssignNew(MyFilterBar, STedsFilterBar) .InFilterableRowNode(QueryStack) .OutFilteredNode(&MyOutNode) .Filters(MyCustomFilters) // An array of filters available to this FilterBar
Use MakeAddFilterButton() to make the button that summons the dropdown showing all the filters
| Name | STedsFilterBar |
| Type | class |
| Header File | /Engine/Plugins/Experimental/EditorDataStorageFeatures/Source/TedsTableViewer/Public/Widgets/STedsFilterBar.h |
| Include Path | #include "Widgets/STedsFilterBar.h" |
Syntax
class STedsFilterBar : public SBasicFilterBar< FTedsRowHandle & >
Inheritance Hierarchy
- SBasicFilterBar< FTedsRowHandle & > → STedsFilterBar
Structs
| Name | Remarks |
|---|---|
| FArguments |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FOnFilterChanged | typename SBasicFilterBar< FTedsRowHandle & >::FOnFilterChanged | Widgets/STedsFilterBar.h | |
| FOnPostFiltersChanged | TBaseDelegate_NoParams< void > | Widgets/STedsFilterBar.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bMarkDirty | bool | Responsible for seeing if a filter was added or removed so multiple recompiles aren't performed every frame. | Widgets/STedsFilterBar.h | |
| ClassFilterNodes | TArray< TSharedPtr< QueryStack::IRowNode > > | Array to store all filter nodes created from the active class filters. | Widgets/STedsFilterBar.h | |
| ClassFilters | TMap< FName, Queries::TQueryFunction< bool > > | External query functions used to filter by class, these are the only filters that use OR instead of AND. | Widgets/STedsFilterBar.h | |
| CombinedClassFilterRowNode | TSharedPtr< QueryStack::IRowNode > | The query stack node responsible for combining class filters - utilizes the unique merge approach (OR) | Widgets/STedsFilterBar.h | |
| CombinedQueryFilterRowNode | TSharedPtr< QueryStack::IRowNode > | The query stack node responsible for combining query filters - utilizes the repeated merge approach (AND) | Widgets/STedsFilterBar.h | |
| CombinedRowCollectorNode | TSharedPtr< QueryStack::IRowNode > | The query stack node responsible for collecting all rows that match the composite query on FullRefresh() | Widgets/STedsFilterBar.h | |
| CompositeFilterNode | TSharedPtr< QueryStack::IRowNode > | The Node responsible for compositing the final node to be given to the OutFilteredNode. | Widgets/STedsFilterBar.h | |
| ExternalQueries | TMap< FName, TSharedPtr< QueryStack::IQueryNode > > | External query descriptions that are currently active (e.g Filters) | Widgets/STedsFilterBar.h | |
| ExternalQueryFunctions | TMap< FName, Queries::TQueryFunction< bool > > | External query functions that are currently active (e.g Filters) | Widgets/STedsFilterBar.h | |
| FilterNodes | TArray< TSharedPtr< QueryStack::IRowNode > > | Array to store all filter nodes created from the active query functions. | Widgets/STedsFilterBar.h | |
| InFilterableRowNode | TSharedPtr< QueryStack::IRowNode > | The row node passed in as the data to filter on. | Widgets/STedsFilterBar.h | |
| OnPostFiltersChanged | FOnPostFiltersChanged | Delegate for additional functionality to perform after the filters have been updated, performed at the end of the RecompileQueries function. | Widgets/STedsFilterBar.h | |
| OutFilteredNode | TSharedPtr< QueryStack::IRowNode > * | Pointer to the Node that is filtered and updated by the FilterBar. | Widgets/STedsFilterBar.h | |
| Storage | ICoreProvider * | Widgets/STedsFilterBar.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void AddClassQueryFunction
(
const FName& ClassName, |
Add an external class query function to the FilterBar (uses OR) | Widgets/STedsFilterBar.h | |
void AddExternalQuery
(
const FName& QueryName, |
Add an external query description to the FilterBar. | Widgets/STedsFilterBar.h | |
void AddExternalQueryFunction
(
const FName& QueryName, |
Add an external query function to the FilterBar. | Widgets/STedsFilterBar.h | |
void AppendExternalQueries
(
DataStorage::FQueryDescription& OutQuery |
Append all external queries into the given query description. | Widgets/STedsFilterBar.h | |
void Construct
(
const FArguments& InArgs |
Constructs this widget with InArgs | Widgets/STedsFilterBar.h | |
void RemoveClassQueryFunction
(
const FName& ClassName |
Widgets/STedsFilterBar.h | ||
void RemoveExternalQuery
(
const FName& QueryName |
Widgets/STedsFilterBar.h | ||
void RemoveExternalQueryFunction
(
const FName& QueryName |
Widgets/STedsFilterBar.h | ||
virtual void Tick
(
const FGeometry& AllottedGeometry, |
Override tick so that filters are only recompiled once if multiple were added at once | Widgets/STedsFilterBar.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void PopulateAddFilterMenu
(
UToolMenu* InMenu |
Widgets/STedsFilterBar.h | ||
virtual void PopulateCommonFilterSections
(
UToolMenu* InMenu |
Widgets/STedsFilterBar.h | ||
virtual void PopulateCustomFilters
(
UToolMenu* InMenu |
Widgets/STedsFilterBar.h | ||
void RecompileQueries() |
Widgets/STedsFilterBar.h |