// Fill out your copyright notice in the Description page of Project Settings.

#pragma once

#include "CoreMinimal.h"
#include "Blueprint/UserWidget.h"
#include "EventManagerDemo/Public/EventManager.h"
#include "DemoUserWidget.generated.h"

UCLASS()
class EVENTMANAGERDEMO_API UDemoUserWidget : public UUserWidget
{
	GENERATED_BODY()

public:
	UDemoUserWidget(const FObjectInitializer& ObjectInitializer);

	void OnDemoEvent(const EventPtr& evt);

protected:
	void NativePreConstruct() override;
	void NativeConstruct() override;
	void NativeDestruct() override;

	UPROPERTY(EditAnywhere, meta = (Category = "Widgets", AllowPrivateAccess = "true", BindWidget))
	class UTextBlock* DemoTextBlock;

private:
	struct FGuid GUID;
	EventCallback callbackFunction;
};
