BsScriptHandleSliderPlane.h 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. #pragma once
  2. #include "BsScriptEditorPrerequisites.h"
  3. #include "BsScriptObject.h"
  4. #include "BsScriptHandleSlider.h"
  5. #include "BsHandleSliderPlane.h"
  6. #include "BsVector3.h"
  7. namespace BansheeEngine
  8. {
  9. /**
  10. * @brief Interop class between C++ & CLR for HandleSliderPlane.
  11. */
  12. class BS_SCR_BED_EXPORT ScriptHandleSliderPlane : public ScriptObject <ScriptHandleSliderPlane, ScriptHandleSliderBase>
  13. {
  14. public:
  15. SCRIPT_OBJ(EDITOR_ASSEMBLY, "BansheeEditor", "HandleSliderPlane")
  16. protected:
  17. /**
  18. * @copydoc ScriptHandleSliderBase::getSlider
  19. */
  20. virtual HandleSlider* getSlider() const override { return mSlider; }
  21. /**
  22. * @copydoc ScriptHandleSliderBase::getSlider
  23. */
  24. virtual void destroyInternal() override;
  25. private:
  26. ScriptHandleSliderPlane(MonoObject* instance, const Vector3& dir1, const Vector3& dir2, float length,
  27. bool fixedScale, UINT64 layer);
  28. ~ScriptHandleSliderPlane();
  29. HandleSliderPlane* mSlider;
  30. /************************************************************************/
  31. /* CLR HOOKS */
  32. /************************************************************************/
  33. static void internal_CreateInstance(MonoObject* instance, Vector3* dir1, Vector3* dir2, float length,
  34. bool fixedScale, UINT64 layer);
  35. static void internal_GetDelta(ScriptHandleSliderPlane* nativeInstance, Vector2* value);
  36. };
  37. }