46 , _TopLevelClassRestriction(UArticyObject::StaticClass())
47 , _HighExtender(
nullptr)
51 , _bExactClassEditable(
true)
54 SLATE_ATTRIBUTE(
FArticyId, ArticyIdToDisplay)
55 SLATE_EVENT(FOnArticyIdChanged, OnArticyIdChanged)
56 SLATE_ATTRIBUTE(UClass*, TopLevelClassRestriction)
57 SLATE_ARGUMENT(TSharedPtr<FExtender>, HighExtender)
58 SLATE_ARGUMENT(FUIAction, CopyAction)
59 SLATE_ARGUMENT(FUIAction, PasteAction)
60 SLATE_ATTRIBUTE(
bool, bExactClass)
61 SLATE_ATTRIBUTE(
bool, bExactClassEditable)
62 SLATE_ATTRIBUTE(
bool, bIsReadOnly)
79 virtual void Tick(
const FGeometry& AllottedGeometry,
const double InCurrentTime,
const float InDeltaTime)
override;
87 TAttribute<FArticyId> ArticyIdToDisplay;
88 FOnArticyIdChanged OnArticyIdChanged;
89 TAttribute<UClass*> TopLevelClassRestriction;
90 TAttribute<bool> bExactClass;
91 TAttribute<bool> bExactClassEditable;
92 TAttribute<bool> bIsReadOnly;
95 TWeakObjectPtr<UArticyObject> CachedArticyObject =
nullptr;
98 TSharedPtr<SHorizontalBox> ChildBox;
99 TSharedPtr<SArticyObjectTileView> TileView;
100 TSharedPtr<SBox> TileContainer;
101 TSharedPtr<SBorder> ThumbnailBorder;
102 TSharedPtr<FSlateBrush> ImageBrush;
103 TSharedPtr<SWidget> ComboButton;
105 TSharedPtr<SHorizontalBox> CustomizationButtonBox_High;
107 TSharedPtr<SHorizontalBox> CustomizationButtonBox_Low;
134 void ApplyArticyRefCustomizations(
const TArray<FArticyIdPropertyWidgetCustomizationInfo>& Customizations);
142 TSharedRef<SWidget> CreateArticyObjectAssetPicker();
149 bool IsClassFilterEditable()
const;
156 void OnArticyObjectPicked(
const FAssetData& ArticyObjectData)
const;
163 FReply OnArticyButtonClicked()
const;
172 FReply OnAssetThumbnailDoubleClick(
const FGeometry& InMyGeometry,
const FPointerEvent& InMouseEvent)
const;
179 FText OnGetArticyObjectDisplayName()
const;
193 bool CanActivate()
const {
return !bIsReadOnly.Get(); }
198 void OnCopyProperty()
const;
203 void OnPasteProperty();
210 bool CanPasteProperty()
const;
213 FUIAction CopyAction;
214 FUIAction PasteAction;
216 TArray<TSharedPtr<IArticyIdPropertyWidgetCustomization>> ActiveCustomizations;
218 TSharedPtr<FExtender> CustomizationHighExtender;
220 TArray<TSharedPtr<FExtender>> ArticyIdCustomizationExtenders;
virtual void Tick(const FGeometry &AllottedGeometry, const double InCurrentTime, const float InDeltaTime) override
Definition SArticyIdProperty.cpp:94