BsScriptHandleSliderLine.h 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. #pragma once
  2. #include "BsScriptEditorPrerequisites.h"
  3. #include "BsScriptObject.h"
  4. #include "BsScriptHandleSlider.h"
  5. #include "BsHandleSliderLine.h"
  6. #include "BsVector3.h"
  7. namespace BansheeEngine
  8. {
  9. /**
  10. * @brief Interop class between C++ & CLR for HandleSliderLine.
  11. */
  12. class BS_SCR_BED_EXPORT ScriptHandleSliderLine : public ScriptObject <ScriptHandleSliderLine, ScriptHandleSliderBase>
  13. {
  14. public:
  15. SCRIPT_OBJ(EDITOR_ASSEMBLY, "BansheeEditor", "HandleSliderLine")
  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. ScriptHandleSliderLine(MonoObject* instance, const Vector3& direction, float length, bool fixedScale);
  27. ~ScriptHandleSliderLine();
  28. HandleSliderLine* mSlider;
  29. /************************************************************************/
  30. /* CLR HOOKS */
  31. /************************************************************************/
  32. static void internal_CreateInstance(MonoObject* instance, Vector3 direction, float length, bool fixedScale);
  33. static void internal_GetDelta(ScriptHandleSliderLine* nativeInstance, float* value);
  34. };
  35. }