Stream Chat Unreal SDK
Loading...
Searching...
No Matches
ContextMenuWidget.h
1// Copyright 2022 Stream.IO, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "Channel/Message.h"
6#include "Components/VerticalBox.h"
7#include "ContextMenuAction.h"
8#include "ContextMenuButtonWidget.h"
9#include "CoreMinimal.h"
10#include "Message/MessageSide.h"
11#include "StreamWidget.h"
12
13#include "ContextMenuWidget.generated.h"
14
18UCLASS()
19class STREAMCHATUI_API UContextMenuWidget final : public UStreamWidget
20{
21 GENERATED_BODY()
22
23public:
24 UFUNCTION(BlueprintCallable, Category = "Stream Chat")
25 void Setup(const FMessage& InMessage, EMessageSide InSide);
26
27protected:
28 UPROPERTY(meta = (BindWidget))
29 UVerticalBox* ButtonsPanel;
30
31 UPROPERTY(EditAnywhere, Instanced, Category = Defaults, meta = (TitleProperty = Label))
32 TArray<UContextMenuAction*> Actions;
33
34 UPROPERTY(EditDefaultsOnly, NoClear, Category = Defaults)
35 TSubclassOf<UContextMenuButtonWidget> ContextMenuButtonWidgetClass = UContextMenuButtonWidget::StaticClass();
36
37 UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = Setup)
38 FMessage Message;
39
40 UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = Setup)
41 EMessageSide Side;
42
43private:
44 virtual void NativePreConstruct() override;
45 void AddButton(UContextMenuAction* Action, EContextMenuButtonPosition Position);
46};
Represents a Stream Chat message.
Definition: Message.h:66