#pragma once #include "CoreMinimal.h" #include "Widgets/SCompoundWidget.h" #include "Widgets/Views/STableRow.h" #include "Widgets/Views/STreeView.h" class FDismembermentGraphEditor; /** * Node category structure for the palette */ struct FDismembermentGraphNodeCategory { // Category name FText CategoryName; // Child nodes TArray> Children; // Node classes in this category TArray NodeClasses; // Constructor FDismembermentGraphNodeCategory(const FText& InCategoryName) : CategoryName(InCategoryName) { } }; /** * Node palette widget for the dismemberment graph editor * This is a stub class that will be implemented later */ class FLESHEDITOR_API SDismembermentGraphPalette : public SCompoundWidget { public: SLATE_BEGIN_ARGS(SDismembermentGraphPalette) {} SLATE_END_ARGS() void Construct(const FArguments& InArgs, TSharedPtr InGraphEditor) { GraphEditor = InGraphEditor; // Create a simple placeholder widget ChildSlot [ SNew(STextBlock) .Text(FText::FromString("Dismemberment Graph Palette - Coming Soon")) ]; } private: // The graph editor that owns this palette TWeakPtr GraphEditor; };