BsScriptHandleSliderPlane.h 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  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, bool fixedScale);
  27. ~ScriptHandleSliderPlane();
  28. HandleSliderPlane* mSlider;
  29. /************************************************************************/
  30. /* CLR HOOKS */
  31. /************************************************************************/
  32. static void internal_CreateInstance(MonoObject* instance, Vector3 dir1, Vector3 dir2, float length, bool fixedScale);
  33. static void internal_GetDelta(ScriptHandleSliderPlane* nativeInstance, Vector2* value);
  34. };
  35. }