PolycodeEditorManager.h 650 B

123456789101112131415161718192021222324252627
  1. #pragma once
  2. #include "Polycode.h"
  3. #include "PolycodeEditor.h"
  4. using namespace Polycode;
  5. class PolycodeEditorManager {
  6. public:
  7. PolycodeEditorManager();
  8. ~PolycodeEditorManager();
  9. PolycodeEditor *getEditorForPath(String path);
  10. PolycodeEditor *createEditorForExtension(String extension);
  11. void registerEditorFactory(PolycodeEditorFactory *editorFactory);
  12. void setCurrentEditor(PolycodeEditor *editor) { currentEditor = editor; }
  13. PolycodeEditor *getCurrentEditor() { return currentEditor; }
  14. protected:
  15. PolycodeEditor *currentEditor;
  16. vector<PolycodeEditor*> openEditors;
  17. vector<PolycodeEditorFactory*> editorFactories;
  18. };