QuartzUIHUD: 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/QuartzUIRuntime/Public/QuartzUIHUD.h) · integration recipe · practical guide
AQuartzUIHUD
Public type. Drop-in Blueprintable HUD facade for the subsystem-owned retained QuartzUI shell.
Prerequisites / integration: Exact local player and configured app; Slate/UMG dependencies for native presentation work. Use the QuartzUIHUD recipe in the host module QuartzUIRuntime.
Minimal example / lifecycle: Set HUDClass to AQuartzUIHUD; use Ready/Failed/Action/Stopped events. HUD rebuild rebinds; explicit Stop closes shell.
Avoid: Assuming EndPlay must destroy the shell. Match the exact declaration below; dependent DTOs/enums are values used by this owner, not independent systems.
Exact source line (source: Source/QuartzUIRuntime/Public/QuartzUIHUD.h#L11)
Complete header
Source snapshot, not an additional example. Unreal annotations distinguish exposed Blueprint nodes from native-only/private methods.
#pragma once
#include "CoreMinimal.h"
#include "GameFramework/HUD.h"
#include "QuartzUIShellComponent.h"
#include "QuartzUIHUD.generated.h"
/** Drop-in Blueprintable HUD facade for the subsystem-owned retained QuartzUI shell. */
UCLASS(Blueprintable, meta = (DisplayName = "QuartzUI HUD"))
class QUARTZUIRUNTIME_API AQuartzUIHUD : public AHUD
{
GENERATED_BODY()
public:
AQuartzUIHUD();
UFUNCTION(BlueprintCallable, Category = "QuartzUI|Shell", meta = (DisplayName = "Start UI Shell"))
bool StartShell();
UFUNCTION(BlueprintCallable, Category = "QuartzUI|Shell", meta = (DisplayName = "Stop UI Shell"))
bool StopShell();
UFUNCTION(BlueprintPure, Category = "QuartzUI|Shell", meta = (DisplayName = "Get UI Shell"))
UQuartzUIView* GetShell() const;
UFUNCTION(BlueprintPure, Category = "QuartzUI|Shell", meta = (DisplayName = "Is UI Ready"))
bool IsShellReady() const;
UFUNCTION(BlueprintPure, Category = "QuartzUI|Shell", meta = (DisplayName = "Get UI Shell Failure"))
FString GetShellFailure() const;
UFUNCTION(BlueprintPure, Category = "QuartzUI|Shell")
UQuartzUIShellComponent* GetShellComponent() const { return ShellComponent; }
UPROPERTY(BlueprintAssignable, Category = "QuartzUI|Shell")
FQuartzUIShellReady OnShellReady;
UPROPERTY(BlueprintAssignable, Category = "QuartzUI|Shell")
FQuartzUIShellFailed OnShellFailed;
UPROPERTY(BlueprintAssignable, Category = "QuartzUI|Shell")
FQuartzUIShellStopped OnShellStopped;
/** Named, explicitly registered action forwarded by the canonical shell view. */
UPROPERTY(BlueprintAssignable, Category = "QuartzUI|Actions")
FQuartzUIActionReceived OnAction;
protected:
virtual void BeginPlay() override;
virtual void EndPlay(const EEndPlayReason::Type EndPlayReason) override;
private:
void BindShellComponentDelegates();
void UnbindShellComponentDelegates();
UFUNCTION()
void HandleShellReady(UQuartzUIView* Shell);
UFUNCTION()
void HandleShellFailed(UQuartzUIView* Shell, FString FailureReason);
UFUNCTION()
void HandleShellStopped(UQuartzUIView* Shell);
UFUNCTION()
void HandleShellAction(FName ActionName);
UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "QuartzUI|Shell", meta = (AllowPrivateAccess = "true"))
TObjectPtr<UQuartzUIShellComponent> ShellComponent;
};