// Fill out your copyright notice in the Description page of Project Settings. #pragma once #include "CoreMinimal.h" #include "Blueprint/UserWidget.h" #include "SharedDef.h" #include "CaptureSettingsUserWidget.generated.h" DECLARE_DYNAMIC_MULTICAST_DELEGATE_OneParam(FOnOpenMenuStateChanged, bool, Open); DECLARE_DYNAMIC_MULTICAST_DELEGATE(FOnStartCapture); DECLARE_DYNAMIC_MULTICAST_DELEGATE(FOnStopCapture); /** * */ UCLASS() class LUCKYWORLDV2_API UCaptureSettingsUserWidget : public UUserWidget { GENERATED_BODY() protected: virtual void NativeConstruct() override; public: UPROPERTY(EditAnywhere, BlueprintReadWrite) bool bIsOpen; UPROPERTY(BlueprintCallable, BlueprintAssignable, Category = "Event") FOnOpenMenuStateChanged OnOpenMenuStateChanged; UPROPERTY(BlueprintCallable, BlueprintAssignable, Category = "Event") FOnStartCapture OnStartCapture; UPROPERTY(BlueprintCallable, BlueprintAssignable, Category = "Event") FOnStopCapture OnStopCapture; public: UFUNCTION(BlueprintCallable) void ToggleMenu(); public: UFUNCTION(BlueprintCallable, BlueprintImplementableEvent) void BPRefreshTaskList(); UFUNCTION(BlueprintCallable, BlueprintImplementableEvent) void BPOnRandomMeshesUpdated(); UFUNCTION(BlueprintCallable, BlueprintImplementableEvent) void BPSaveSettings(); UFUNCTION(BlueprintCallable, BlueprintImplementableEvent) void BPLoadSettings(); UFUNCTION(BlueprintCallable, BlueprintImplementableEvent) void ToggleMenuDisplay(); UFUNCTION(BlueprintCallable, BlueprintImplementableEvent) void BPChangeCaptureState(); };