BsSceneViewHandler.h 717 B

123456789101112131415161718192021222324252627282930
  1. #pragma once
  2. #include "BsEditorPrerequisites.h"
  3. namespace BansheeEngine
  4. {
  5. class BS_ED_EXPORT SceneViewHandler
  6. {
  7. public:
  8. SceneViewHandler(EditorWidgetBase* parentWidget, const SPtr<CameraHandler>& camera);
  9. virtual ~SceneViewHandler();
  10. void update(const Vector2I& position, const Vector2I& delta);
  11. void trySelectHandle(const Vector2I& position);
  12. bool isHandleActive() const;
  13. void clearHandleSelection();
  14. void pickObject(const Vector2I& position, bool additive);
  15. protected:
  16. void render(const Viewport* viewport, DrawList& drawList);
  17. void wrapCursorToWindow();
  18. private:
  19. EditorWidgetBase* mParentWidget;
  20. SPtr<CameraHandler> mCamera;
  21. SceneGrid* mSceneGrid;
  22. HEvent mRenderCallback;
  23. };
  24. }