BsScriptGUICurves.generated.cpp 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175
  1. #include "BsScriptGUICurves.generated.h"
  2. #include "BsMonoMethod.h"
  3. #include "BsMonoClass.h"
  4. #include "BsMonoUtil.h"
  5. #include "../../../EditorCore/GUI/BsGUICurves.h"
  6. #include "BsScriptKeyframeRef.generated.h"
  7. #include "BsScriptCurveDrawInfo.generated.h"
  8. #include "../../../EditorCore/GUI/BsGUICurves.h"
  9. #include "Wrappers/BsScriptVector.h"
  10. #include "BsScriptTangentRef.generated.h"
  11. #include "Wrappers/BsScriptVector2I.h"
  12. namespace bs
  13. {
  14. ScriptGUICurves::onClickedThunkDef ScriptGUICurves::onClickedThunk;
  15. ScriptGUICurves::ScriptGUICurves(MonoObject* managedInstance, GUICurves* value)
  16. :TScriptGUIElement(managedInstance, value)
  17. {
  18. value->onClicked.connect(std::bind(&ScriptGUICurves::onClicked, this));
  19. }
  20. void ScriptGUICurves::initRuntimeData()
  21. {
  22. metaData.scriptClass->addInternalCall("Internal_setCurves", (void*)&ScriptGUICurves::Internal_setCurves);
  23. metaData.scriptClass->addInternalCall("Internal_getCurves", (void*)&ScriptGUICurves::Internal_getCurves);
  24. metaData.scriptClass->addInternalCall("Internal_setRange", (void*)&ScriptGUICurves::Internal_setRange);
  25. metaData.scriptClass->addInternalCall("Internal_setOffset", (void*)&ScriptGUICurves::Internal_setOffset);
  26. metaData.scriptClass->addInternalCall("Internal_centerAndZoom", (void*)&ScriptGUICurves::Internal_centerAndZoom);
  27. metaData.scriptClass->addInternalCall("Internal_pixelToCurveSpace", (void*)&ScriptGUICurves::Internal_pixelToCurveSpace);
  28. metaData.scriptClass->addInternalCall("Internal_curveToPixelSpace", (void*)&ScriptGUICurves::Internal_curveToPixelSpace);
  29. metaData.scriptClass->addInternalCall("Internal_findCurve", (void*)&ScriptGUICurves::Internal_findCurve);
  30. metaData.scriptClass->addInternalCall("Internal_findKeyFrame", (void*)&ScriptGUICurves::Internal_findKeyFrame);
  31. metaData.scriptClass->addInternalCall("Internal_findTangent", (void*)&ScriptGUICurves::Internal_findTangent);
  32. metaData.scriptClass->addInternalCall("Internal_selectKeyframe", (void*)&ScriptGUICurves::Internal_selectKeyframe);
  33. metaData.scriptClass->addInternalCall("Internal_clearSelectedKeyframes", (void*)&ScriptGUICurves::Internal_clearSelectedKeyframes);
  34. metaData.scriptClass->addInternalCall("Internal_create", (void*)&ScriptGUICurves::Internal_create);
  35. metaData.scriptClass->addInternalCall("Internal_create0", (void*)&ScriptGUICurves::Internal_create0);
  36. onClickedThunk = (onClickedThunkDef)metaData.scriptClass->getMethodExact("Internal_onClicked", "")->getThunk();
  37. }
  38. void ScriptGUICurves::onClicked()
  39. {
  40. MonoUtil::invokeThunk(onClickedThunk, getManagedInstance());
  41. }
  42. void ScriptGUICurves::Internal_setCurves(ScriptGUICurves* thisPtr, MonoArray* curves)
  43. {
  44. Vector<CurveDrawInfo> veccurves;
  45. if(curves != nullptr)
  46. {
  47. ScriptArray arraycurves(curves);
  48. veccurves.resize(arraycurves.size());
  49. for(int i = 0; i < (int)arraycurves.size(); i++)
  50. {
  51. veccurves[i] = ScriptCurveDrawInfo::fromInterop(arraycurves.get<__CurveDrawInfoInterop>(i));
  52. }
  53. }
  54. static_cast<GUICurves*>(thisPtr->getGUIElement())->setCurves(veccurves);
  55. }
  56. MonoArray* ScriptGUICurves::Internal_getCurves(ScriptGUICurves* thisPtr)
  57. {
  58. Vector<CurveDrawInfo> vec__output;
  59. vec__output = static_cast<GUICurves*>(thisPtr->getGUIElement())->getCurves();
  60. MonoArray* __output;
  61. int arraySize__output = (int)vec__output.size();
  62. ScriptArray array__output = ScriptArray::create<ScriptCurveDrawInfo>(arraySize__output);
  63. for(int i = 0; i < arraySize__output; i++)
  64. {
  65. array__output.set(i, ScriptCurveDrawInfo::toInterop(vec__output[i]));
  66. }
  67. __output = array__output.getInternal();
  68. return __output;
  69. }
  70. void ScriptGUICurves::Internal_setRange(ScriptGUICurves* thisPtr, float xRange, float yRange)
  71. {
  72. static_cast<GUICurves*>(thisPtr->getGUIElement())->setRange(xRange, yRange);
  73. }
  74. void ScriptGUICurves::Internal_setOffset(ScriptGUICurves* thisPtr, Vector2* offset)
  75. {
  76. static_cast<GUICurves*>(thisPtr->getGUIElement())->setOffset(*offset);
  77. }
  78. void ScriptGUICurves::Internal_centerAndZoom(ScriptGUICurves* thisPtr)
  79. {
  80. static_cast<GUICurves*>(thisPtr->getGUIElement())->centerAndZoom();
  81. }
  82. bool ScriptGUICurves::Internal_pixelToCurveSpace(ScriptGUICurves* thisPtr, Vector2I* pixelCoords, Vector2* curveCoords, bool padding)
  83. {
  84. bool tmp__output;
  85. tmp__output = static_cast<GUICurves*>(thisPtr->getGUIElement())->pixelToCurveSpace(*pixelCoords, *curveCoords, padding);
  86. bool __output;
  87. __output = tmp__output;
  88. return __output;
  89. }
  90. void ScriptGUICurves::Internal_curveToPixelSpace(ScriptGUICurves* thisPtr, Vector2* curveCoords, Vector2I* __output)
  91. {
  92. Vector2I tmp__output;
  93. tmp__output = static_cast<GUICurves*>(thisPtr->getGUIElement())->curveToPixelSpace(*curveCoords);
  94. *__output = tmp__output;
  95. }
  96. uint32_t ScriptGUICurves::Internal_findCurve(ScriptGUICurves* thisPtr, Vector2I* pixelCoords)
  97. {
  98. uint32_t tmp__output;
  99. tmp__output = static_cast<GUICurves*>(thisPtr->getGUIElement())->findCurve(*pixelCoords);
  100. uint32_t __output;
  101. __output = tmp__output;
  102. return __output;
  103. }
  104. bool ScriptGUICurves::Internal_findKeyFrame(ScriptGUICurves* thisPtr, Vector2I* pixelCoords, KeyframeRef* keyframe)
  105. {
  106. bool tmp__output;
  107. tmp__output = static_cast<GUICurves*>(thisPtr->getGUIElement())->findKeyFrame(*pixelCoords, *keyframe);
  108. bool __output;
  109. __output = tmp__output;
  110. return __output;
  111. }
  112. bool ScriptGUICurves::Internal_findTangent(ScriptGUICurves* thisPtr, Vector2I* pixelCoords, __TangentRefInterop* tangent)
  113. {
  114. bool tmp__output;
  115. TangentRef tmptangent;
  116. tmp__output = static_cast<GUICurves*>(thisPtr->getGUIElement())->findTangent(*pixelCoords, tmptangent);
  117. bool __output;
  118. __output = tmp__output;
  119. __TangentRefInterop interoptangent;
  120. interoptangent = ScriptTangentRef::toInterop(tmptangent);
  121. MonoUtil::valueCopy(tangent, &interoptangent, ScriptTangentRef::getMetaData()->scriptClass->_getInternalClass());
  122. return __output;
  123. }
  124. void ScriptGUICurves::Internal_selectKeyframe(ScriptGUICurves* thisPtr, KeyframeRef* keyframeRef, TangentModeBits tangentMode, bool selected)
  125. {
  126. static_cast<GUICurves*>(thisPtr->getGUIElement())->selectKeyframe(*keyframeRef, tangentMode, selected);
  127. }
  128. void ScriptGUICurves::Internal_clearSelectedKeyframes(ScriptGUICurves* thisPtr)
  129. {
  130. static_cast<GUICurves*>(thisPtr->getGUIElement())->clearSelectedKeyframes();
  131. }
  132. void ScriptGUICurves::Internal_create(MonoObject* managedInstance, MonoString* styleName)
  133. {
  134. String tmpstyleName;
  135. tmpstyleName = MonoUtil::monoToString(styleName);
  136. GUICurves* instance = GUICurves::create(tmpstyleName);
  137. new (bs_alloc<ScriptGUICurves>())ScriptGUICurves(managedInstance, instance);
  138. }
  139. void ScriptGUICurves::Internal_create0(MonoObject* managedInstance, CurveDrawOption drawOptions, MonoString* styleName)
  140. {
  141. String tmpstyleName;
  142. tmpstyleName = MonoUtil::monoToString(styleName);
  143. GUICurves* instance = GUICurves::create(drawOptions, tmpstyleName);
  144. new (bs_alloc<ScriptGUICurves>())ScriptGUICurves(managedInstance, instance);
  145. }
  146. }