i_editor_notifier.hpp 569 B

12345678910111213141516171819202122
  1. #pragma once
  2. #include "lumacs/ui_interface.hpp"
  3. #include <string>
  4. namespace lumacs {
  5. /// @brief Interface for components that need to notify the editor of events or messages.
  6. class IEditorNotifier {
  7. public:
  8. virtual ~IEditorNotifier() = default;
  9. /// @brief Emit a system-wide editor event.
  10. /// @param event The event to broadcast.
  11. virtual void emit_event(EditorEvent event) = 0;
  12. /// @brief Display a message to the user.
  13. /// @param message The message string.
  14. virtual void set_message(std::string message) = 0;
  15. };
  16. } // namespace lumacs