BsScriptHandleSliderPlane.h 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. //********************************** Banshee Engine (www.banshee3d.com) **************************************************//
  2. //**************** Copyright (c) 2016 Marko Pintera ([email protected]). All rights reserved. **********************//
  3. #pragma once
  4. #include "BsScriptEditorPrerequisites.h"
  5. #include "BsScriptObject.h"
  6. #include "Wrappers/BsScriptHandleSlider.h"
  7. #include "Handles/BsHandleSliderPlane.h"
  8. #include "Math/BsVector3.h"
  9. namespace bs
  10. {
  11. /** @addtogroup ScriptInteropEditor
  12. * @{
  13. */
  14. /** Interop class between C++ & CLR for HandleSliderPlane. */
  15. class BS_SCR_BED_EXPORT ScriptHandleSliderPlane : public ScriptObject <ScriptHandleSliderPlane, ScriptHandleSliderBase>
  16. {
  17. public:
  18. SCRIPT_OBJ(EDITOR_ASSEMBLY, EDITOR_NS, "HandleSliderPlane")
  19. protected:
  20. /** @copydoc ScriptHandleSliderBase::getSlider */
  21. HandleSlider* getSlider() const override { return mSlider; }
  22. /** @copydoc ScriptHandleSliderBase::getSlider */
  23. void destroyInternal() override;
  24. private:
  25. ScriptHandleSliderPlane(MonoObject* instance, const Vector3& dir1, const Vector3& dir2, float length,
  26. bool fixedScale, UINT64 layer);
  27. ~ScriptHandleSliderPlane();
  28. HandleSliderPlane* mSlider;
  29. /************************************************************************/
  30. /* CLR HOOKS */
  31. /************************************************************************/
  32. static void internal_CreateInstance(MonoObject* instance, Vector3* dir1, Vector3* dir2, float length,
  33. bool fixedScale, UINT64 layer);
  34. static void internal_GetDelta(ScriptHandleSliderPlane* nativeInstance, Vector2* value);
  35. };
  36. /** @} */
  37. }