Files
XCEngine/editor/src/Core/IEditorContext.h

31 lines
660 B
C
Raw Normal View History

#pragma once
#include <memory>
#include <string>
namespace XCEngine {
namespace Editor {
class EventBus;
class ISelectionManager;
class IProjectManager;
class ISceneManager;
class IUndoManager;
class IEditorContext {
public:
virtual ~IEditorContext() = default;
virtual EventBus& GetEventBus() = 0;
virtual ISelectionManager& GetSelectionManager() = 0;
virtual ISceneManager& GetSceneManager() = 0;
virtual IProjectManager& GetProjectManager() = 0;
virtual IUndoManager& GetUndoManager() = 0;
virtual void SetProjectPath(const std::string& path) = 0;
virtual const std::string& GetProjectPath() const = 0;
};
}
}