57 lines
1.3 KiB
C++
57 lines
1.3 KiB
C++
#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<TSharedPtr<FDismembermentGraphNodeCategory>> Children;
|
|
|
|
// Node classes in this category
|
|
TArray<UClass*> 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<FDismembermentGraphEditor> 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<FDismembermentGraphEditor> GraphEditor;
|
|
};
|