#pragma once #include #include #include "workspace/WorkSpace.h" #include "workspace/CommandExecutor.h" class CommandManager { public: void Reload(WorkSpace* ws); void Execute(WorkSpace* ws, WorkSpace::CommandWhen when); // List parsed commands (no trigger distinction for UI consumption) std::vector ListCommands(WorkSpace* ws); // Execute a single command by its name (exact match) bool ExecuteByName(WorkSpace* ws, const QString& name); private: std::vector> onCreate_; std::vector> onLoad_; };