BsScriptHandleSlider2D.h 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. //********************************** Banshee Engine (www.banshee3d.com) **************************************************//
  2. //**************** Copyright (c) 2018 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/BsHandleSlider2D.h"
  8. namespace bs
  9. {
  10. /** @addtogroup ScriptInteropEditor
  11. * @{
  12. */
  13. /** Interop class between C++ & CLR for HandleSlider2D. */
  14. class BS_SCR_BED_EXPORT ScriptHandleSlider2D : public ScriptObject <ScriptHandleSlider2D, ScriptHandleSliderBase>
  15. {
  16. public:
  17. SCRIPT_OBJ(EDITOR_ASSEMBLY, EDITOR_NS, "HandleSlider2D")
  18. protected:
  19. /** @copydoc ScriptHandleSliderBase::getSlider */
  20. HandleSlider* getSlider() const override { return mSlider; }
  21. /** @copydoc ScriptHandleSliderBase::getSlider */
  22. void destroyInternal() override;
  23. private:
  24. ScriptHandleSlider2D(MonoObject* instance, UINT32 width, UINT32 height, Slider2DConstraint constraint, UINT64 layer);
  25. ~ScriptHandleSlider2D();
  26. HandleSlider2D* mSlider;
  27. /************************************************************************/
  28. /* CLR HOOKS */
  29. /************************************************************************/
  30. static void internal_CreateInstance(MonoObject* instance, UINT32 width, UINT32 height,
  31. Slider2DConstraint constraint, UINT64 layer);
  32. static void internal_GetDelta(ScriptHandleSlider2D* nativeInstance, Vector2I* value);
  33. };
  34. /** @} */
  35. }