QuartzUIEditorSettings: declaration reference
0.57.0-dev · beta source documentation. Native, Blueprint, Editor and rendering examples are source-reviewed, not executed in Unreal during this scan. See validation and limits.
Pinned source (source: Source/QuartzUIEditor/Public/QuartzUIEditorSettings.h) · integration recipe · practical guide
UQuartzUIEditorSettings
Editor type. Per-project editor preferences. Remote debugging is never enabled by this module in packaged games.
Prerequisites / integration: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target. Use the QuartzUIEditorSettings recipe in the host module QuartzUIEditor.
Minimal example / lifecycle: Configure Editor Preferences then restart for DevTools changes. Editor user settings only.
Avoid: Assuming legacy default frontend root matches the host. Match the exact declaration below; dependent DTOs/enums are values used by this owner, not independent systems.
Exact source line (source: Source/QuartzUIEditor/Public/QuartzUIEditorSettings.h#L9)
Complete header
Source snapshot, not an additional example. Unreal annotations distinguish exposed Blueprint nodes from native-only/private methods.
#pragma once
#include "Engine/DeveloperSettings.h"
#include "QuartzUIEditorSettings.generated.h"
/** Per-project editor preferences. Remote debugging is never enabled by this module in packaged games. */
UCLASS(Config = EditorPerProjectUserSettings, DefaultConfig, meta = (DisplayName = "QuartzUI"))
class QUARTZUIEDITOR_API UQuartzUIEditorSettings final : public UDeveloperSettings
{
GENERATED_BODY()
public:
virtual FName GetContainerName() const override { return TEXT("Editor"); }
virtual FName GetCategoryName() const override { return TEXT("Plugins"); }
virtual FName GetSectionName() const override { return TEXT("QuartzUI"); }
/** Adds -cefdebug before Epic's CEF singleton starts, enabling the Tools menu without a manual launch flag. */
UPROPERTY(Config, EditAnywhere, Category = "Development", meta = (DisplayName = "Automatically Enable Chromium DevTools"))
bool bAutoEnableRemoteDevTools = true;
/** Loopback Chromium debugging port used only by Editor builds. */
UPROPERTY(Config, EditAnywhere, Category = "Development", meta = (ClampMin = "1024", ClampMax = "65535"))
int32 DevToolsPort = 9222;
/** Frontend root for Tools > Quartz UI > Development Server > Start Vite Dev Server. Supports $(ProjectDir) and $(PluginDir). */
UPROPERTY(Config, EditAnywhere, Category = "Development Server", meta = (DisplayName = "Frontend Root Directory"))
FString FrontendRootDirectory = TEXT("$(PluginDir)/../../Frontend");
/** Node executable basename from PATH, or an absolute node/node.exe path. Arbitrary commands are rejected. */
UPROPERTY(Config, EditAnywhere, Category = "Development Server", meta = (DisplayName = "Node Executable"))
FString NodeExecutable = TEXT("node");
/** Packaged app ID redirected to Vite only while the Editor-owned process is active. */
UPROPERTY(Config, EditAnywhere, Category = "Development Server", meta = (DisplayName = "Development App ID"))
FName DevelopmentAppId = TEXT("mvp");
/** Fixed IPv4 loopback port. Vite uses strictPort and will not silently select another origin. */
UPROPERTY(Config, EditAnywhere, Category = "Development Server", meta = (ClampMin = "1024", ClampMax = "65535"))
int32 VitePort = 5173;
/** Optional relative startup page. Empty opens the Vite root. */
UPROPERTY(Config, EditAnywhere, Category = "Development Server", meta = (DisplayName = "Development Entry Path"))
FString DevelopmentEntryPath;
/** Project-relative output used by Tools > Quartz UI > Advanced > Generate TypeScript Contract. */
UPROPERTY(Config, EditAnywhere, Category = "Contracts", meta = (DisplayName = "TypeScript Contract Output"))
FString TypeScriptContractOutput = TEXT("QuartzUI/Generated/quartzui.contract.ts");
};