Files
LuckyWorld/Source/LuckyWorldV2/Public/UI/Settings/CaptureSettingsUserWidget.h
2025-04-14 13:01:18 +08:00

60 lines
1.5 KiB
C++

// 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();
};