82 void SetTitle(
const wxString &title);
NodeSelectionCallback m_nodeSelectionCallback
EmberCore::ITreeStructure * GetAbstractedTree() const
Get the abstracted tree structure.
BehaviorTreeScene(wxWindow *parent, const wxString &title="Behavior Tree")
Construct a new BehaviorTreeScene.
std::shared_ptr< EmberCore::ITreeStructure > m_treeAdapter
wxString GetTitle() const override
Returns the display title of the scene.
wxPanel * GetPanel() override
Returns the wxPanel used as the scene content.
void OnDeactivated() override
Called when the scene becomes inactive.
void CreateSampleBehaviorTree()
Create a sample behavior tree for testing/demo purposes.
std::shared_ptr< EmberCore::Node > m_behaviorTreeRoot
BehaviorTreeScene(const BehaviorTreeScene &)=delete
void Refresh() override
Refreshes the scene content.
virtual ~BehaviorTreeScene()
EmberCore::Node * GetBehaviorTree() const
Get the behavior tree root node (legacy interface)
bool HasUnsavedChanges() const override
Returns true if the scene has unsaved changes.
EmberForge::ForgeTreeCanvas * GetTreeVisualization() const
void SetNodeSelectionCallback(NodeSelectionCallback callback)
Set callback for node selection events.
void OnActivated() override
Called when the scene becomes active.
void SetTitle(const wxString &title)
Set the title of this scene.
BehaviorTreeScene & operator=(const BehaviorTreeScene &)=delete
std::shared_ptr< EmberCore::ITreeStructure > GetTreeAdapter() const
void SetCanvasBackgroundColor(const wxColour &color)
Set the canvas background color.
void SetBehaviorTree(std::shared_ptr< EmberCore::Node > root)
Set the behavior tree for this scene using legacy Node interface.
wxString GetSceneType() const override
Returns the scene type identifier.
EmberForge::ForgeTreeCanvas * m_treeVisualization
bool Save() override
Saves the scene content; returns true on success.
std::function< void(EmberCore::ITreeNode *)> NodeSelectionCallback
Abstract interface for tree nodes that can be visualized.
Abstract interface for tree structures that can be visualized.
Represents a node in a behavior tree structure.
Interface for scene-based UI components (e.g., views or screens).