Unrealzilla/Source/Unrealzilla/Public/UnrealzillaGlobalSettings.h

91 lines
4.2 KiB
C++

// ©2022 Batty Bovine Productions, LLC. All Rights Reserved.
#pragma once
#include "BugPlacerPawn.h"
#include "Engine/DeveloperSettingsBackedByCVars.h"
#include "UnrealzillaGlobalSettings.generated.h"
/**
* Global settings for Unrealzilla classes
*/
UCLASS(Config=Unrealzilla, defaultconfig, meta=(DisplayName="Unrealzilla"))
class UNREALZILLA_API UUnrealzillaGlobalSettings : public UDeveloperSettingsBackedByCVars
{
GENERATED_BODY()
public:
// The distance to send the trace out when placing bug markers in the world.
UPROPERTY(Config, BlueprintReadOnly, EditDefaultsOnly, Category="Bug Placement", meta=(DisplayName="Precise Placement Distance"))
float BugPlacementTraceDistance = 1500.0f;
// The distance to hold the bug marker when using the arbitrary placement option.
UPROPERTY(Config, BlueprintReadOnly, EditDefaultsOnly, Category="Bug Placement", meta=(DisplayName="Arbitrary Placement Distance"))
float ArbitraryBugPlacementDistance = 250.0f;
// The Bugzilla server where bugs will be posted.
UPROPERTY(Config, EditDefaultsOnly, BlueprintReadOnly, Category="Reporting|Bugzilla")
FString SubmissionServer;
// The name of the product for which bugs will be posted.
UPROPERTY(Config, EditDefaultsOnly, BlueprintReadOnly, Category="Reporting|Bugzilla")
FString ProductName;
// The API key to use when posting bugs. All bugs will be posted under the account of the owner of this API key.
UPROPERTY(Config, EditDefaultsOnly, BlueprintReadOnly, Category="Reporting|Bugzilla", meta=(DisplayName="API Key"))
FString APIKey;
// The viewport depth of the bug report interface widget.
UPROPERTY(Config, EditDefaultsOnly, BlueprintReadOnly, Category="Reporting|Bugzilla")
int32 BugReportWidgetDepth = 0;
// The status to use when filing a new bug. A status such as "UNCONFIRMED" is suggested.
UPROPERTY(Config, EditDefaultsOnly, BlueprintReadOnly, Category="Reporting|Bugzilla")
FString DefaultStatus;
// Whether to show unresolved bugs when displaying bug report markers.
UPROPERTY(Config, EditDefaultsOnly, BlueprintReadOnly, Category="Marking")
bool bShowUnresolvedBugs = true;
// Colour tint to use for unresolved bugs.
UPROPERTY(Config, EditDefaultsOnly, BlueprintReadOnly, Category="Marking")
FLinearColor UnresolvedTint;
// A list of bug statuses that represent unresolved bugs in your Bugzilla install.
// Generally this would be something like "UNCONFIRMED" and "CONFIRMED".
UPROPERTY(Config, EditDefaultsOnly, BlueprintReadOnly, Category="Marking")
TArray<FString> UnresolvedStatuses;
// Whether to show in-progress bugs when displaying bug report markers.
UPROPERTY(Config, EditDefaultsOnly, BlueprintReadOnly, Category="Marking")
bool bShowInProgressBugs = true;
// Colour tint to use for in-progress bugs.
UPROPERTY(Config, EditDefaultsOnly, BlueprintReadOnly, Category="Marking")
FLinearColor InProgressTint;
// A list of bug statuses that represent in progress bugs in your Bugzilla install.
// Generally this would include "IN_PROGRESS".
UPROPERTY(Config, EditDefaultsOnly, BlueprintReadOnly, Category="Marking")
TArray<FString> InProgressStatuses;
// Whether to show resolved bugs when displaying bug report markers.
UPROPERTY(Config, EditDefaultsOnly, BlueprintReadOnly, Category="Marking")
bool bShowResolvedBugs = false;
// Colour tint to use for resolved bugs.
UPROPERTY(Config, EditDefaultsOnly, BlueprintReadOnly, Category="Marking")
FLinearColor ResolvedTint;
// A list of bug statuses that represent resolved bugs in your Bugzilla install.
// Generally this would include "RESOLVED" and "VERIFIED".
UPROPERTY(Config, EditDefaultsOnly, BlueprintReadOnly, Category="Marking")
TArray<FString> ResolvedStatuses;
// How many bug markers to show in one batch. Each batch loads on a new frame.
UPROPERTY(Config, EditDefaultsOnly, BlueprintReadOnly, Category="Marking")
int32 LoadMarkersBatch = 10;
// How many bug markers to hide in one batch. Each batch loads on a new frame.
UPROPERTY(Config, EditDefaultsOnly, BlueprintReadOnly, Category="Marking")
int32 UnloadMarkersBatch = 25;
public:
virtual void PostInitProperties() override;
virtual FName GetCategoryName() const override;
#if WITH_EDITOR
virtual void PostEditChangeProperty(struct FPropertyChangedEvent &PropertyChangedEvent) override;
#endif
};