5#include "Common/IconButton.h"
6#include "Components/EditableText.h"
7#include "Components/WrapBox.h"
8#include "CoreMinimal.h"
9#include "SelectedContactWidget.h"
10#include "StreamWidget.h"
12#include "SelectedContactsWidget.generated.h"
18class STREAMCHATUI_API USelectedContactsWidget final : public UStreamWidget
23 UFUNCTION(BlueprintCallable, Category = "Stream|Selected Contacts")
24 void SetUsers(const TArray<
FUserRef>& Users);
26 UFUNCTION(BlueprintCallable, Category = "Stream|Selected Contacts")
28 UFUNCTION(BlueprintCallable, Category = "Stream|Selected Contacts")
29 void RemoveUser(const
FUserRef& User);
30 UFUNCTION(BlueprintPure, Category = "Stream|Selected Contacts")
31 const TArray<
FUserRef>& GetUsers() const;
32 UFUNCTION(BlueprintCallable, Category = "Stream|Selected Contacts")
33 void SetGroupMode(
bool bIsGroupMode);
35 DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FSearchTextChanged, const FText&,
Text);
36 UPROPERTY(BlueprintAssignable)
37 FSearchTextChanged OnSearchTextChanged;
40 UPROPERTY(meta = (BindWidget))
43 UPROPERTY(meta = (BindWidget))
46 UPROPERTY(meta = (BindWidget))
47 UTextBlock* TextBlock;
49 UPROPERTY(meta = (BindWidget))
52 UPROPERTY(meta = (BindWidget))
55 UPROPERTY(meta = (BindWidget))
56 UEditableText* SearchText;
58 UPROPERTY(EditAnywhere, NoClear, Category = Defaults)
59 TSubclassOf<USelectedContactWidget> SelectedContactWidgetClass = USelectedContactWidget::StaticClass();
61 UPROPERTY(EditDefaultsOnly, Category = Defaults)
65 virtual
void OnSetup() override;
66 virtual
void NativePreConstruct() override;
67 virtual
void NativeConstruct() override;
68 virtual
void NativeDestruct() override;
71 void OnAddUserClicked();
73 void OnSearchTextCommit(const FText&
Text, ETextCommit::
Type Commit);
75 void PopulateWrapBox();
76 void SetTypingMode(
bool bNewTypingMode);
78 bool bTypingMode = false;
@ Text
Text of the message.
@ Type
Type of the message.
A reference to a unique User.
Definition: UserRef.h:23