22 , _StructFilter(nullptr)
24 , _bMultiSelect(false)
26 SLATE_ARGUMENT(FName, Filter);
27 SLATE_ARGUMENT(TOptional<ELiveConfigPropertyType>, FilterType);
28 SLATE_ARGUMENT(UScriptStruct*, StructFilter);
29 SLATE_ARGUMENT(
bool, bReadOnly);
30 SLATE_ARGUMENT(
bool, bMultiSelect);
31 SLATE_EVENT(FOnPropertySelected, OnPropertySelected);
35 void Construct(
const FArguments& InArgs);
38 TSharedPtr<SWidget> GetWidgetToFocusOnOpen();
48 void RefreshPropertyList();
51 void OnFilterTextChanged(
const FText& InFilterText);
54 void OnSelectionChanged(TSharedPtr<FLiveConfigProperty> InItem, ESelectInfo::Type SelectInfo);
57 FReply OnAddNewPropertyClicked();
66 TSharedRef<ITableRow> GenerateRow(TSharedPtr<FLiveConfigProperty> InItem,
const TSharedRef<STableViewBase>& OwnerTable);
70 TOptional<ELiveConfigPropertyType> FilterType;
71 TWeakObjectPtr<UScriptStruct> StructFilter;
72 bool bReadOnly =
false;
73 bool bMultiSelect =
false;
75 TArray<TSharedPtr<FLiveConfigProperty>> AvailablePropertyNames;
76 TArray<TSharedPtr<FLiveConfigProperty>> FilteredProperties;
77 TSharedPtr<class SSearchBox> SearchBox;
78 TSharedPtr<class SListView<TSharedPtr<FLiveConfigProperty>>> PropertyListView;
80 FOnPropertySelected OnPropertyChanged;