luat_lv_linemeter.c 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  1. #include "luat_base.h"
  2. #include "lvgl.h"
  3. #include "luat_lvgl.h"
  4. // lv_obj_t* lv_linemeter_create(lv_obj_t* par, lv_obj_t* copy)
  5. int luat_lv_linemeter_create(lua_State *L) {
  6. LV_DEBUG("CALL lv_linemeter_create");
  7. lv_obj_t* par = (lv_obj_t*)lua_touserdata(L, 1);
  8. lv_obj_t* copy = (lv_obj_t*)lua_touserdata(L, 2);
  9. lv_obj_t* ret = NULL;
  10. ret = lv_linemeter_create(par ,copy);
  11. if (ret) lua_pushlightuserdata(L, ret); else lua_pushnil(L);
  12. return 1;
  13. }
  14. // void lv_linemeter_set_value(lv_obj_t* lmeter, int32_t value)
  15. int luat_lv_linemeter_set_value(lua_State *L) {
  16. LV_DEBUG("CALL lv_linemeter_set_value");
  17. lv_obj_t* lmeter = (lv_obj_t*)lua_touserdata(L, 1);
  18. int32_t value = (int32_t)luaL_checkinteger(L, 2);
  19. lv_linemeter_set_value(lmeter ,value);
  20. return 0;
  21. }
  22. // void lv_linemeter_set_range(lv_obj_t* lmeter, int32_t min, int32_t max)
  23. int luat_lv_linemeter_set_range(lua_State *L) {
  24. LV_DEBUG("CALL lv_linemeter_set_range");
  25. lv_obj_t* lmeter = (lv_obj_t*)lua_touserdata(L, 1);
  26. int32_t min = (int32_t)luaL_checkinteger(L, 2);
  27. int32_t max = (int32_t)luaL_checkinteger(L, 3);
  28. lv_linemeter_set_range(lmeter ,min ,max);
  29. return 0;
  30. }
  31. // void lv_linemeter_set_scale(lv_obj_t* lmeter, uint16_t angle, uint16_t line_cnt)
  32. int luat_lv_linemeter_set_scale(lua_State *L) {
  33. LV_DEBUG("CALL lv_linemeter_set_scale");
  34. lv_obj_t* lmeter = (lv_obj_t*)lua_touserdata(L, 1);
  35. uint16_t angle = (uint16_t)luaL_checkinteger(L, 2);
  36. uint16_t line_cnt = (uint16_t)luaL_checkinteger(L, 3);
  37. lv_linemeter_set_scale(lmeter ,angle ,line_cnt);
  38. return 0;
  39. }
  40. // void lv_linemeter_set_angle_offset(lv_obj_t* lmeter, uint16_t angle)
  41. int luat_lv_linemeter_set_angle_offset(lua_State *L) {
  42. LV_DEBUG("CALL lv_linemeter_set_angle_offset");
  43. lv_obj_t* lmeter = (lv_obj_t*)lua_touserdata(L, 1);
  44. uint16_t angle = (uint16_t)luaL_checkinteger(L, 2);
  45. lv_linemeter_set_angle_offset(lmeter ,angle);
  46. return 0;
  47. }
  48. // void lv_linemeter_set_mirror(lv_obj_t* lmeter, bool mirror)
  49. int luat_lv_linemeter_set_mirror(lua_State *L) {
  50. LV_DEBUG("CALL lv_linemeter_set_mirror");
  51. lv_obj_t* lmeter = (lv_obj_t*)lua_touserdata(L, 1);
  52. bool mirror = (bool)lua_toboolean(L, 2);
  53. lv_linemeter_set_mirror(lmeter ,mirror);
  54. return 0;
  55. }
  56. // int32_t lv_linemeter_get_value(lv_obj_t* lmeter)
  57. int luat_lv_linemeter_get_value(lua_State *L) {
  58. LV_DEBUG("CALL lv_linemeter_get_value");
  59. lv_obj_t* lmeter = (lv_obj_t*)lua_touserdata(L, 1);
  60. int32_t ret;
  61. ret = lv_linemeter_get_value(lmeter);
  62. lua_pushinteger(L, ret);
  63. return 1;
  64. }
  65. // int32_t lv_linemeter_get_min_value(lv_obj_t* lmeter)
  66. int luat_lv_linemeter_get_min_value(lua_State *L) {
  67. LV_DEBUG("CALL lv_linemeter_get_min_value");
  68. lv_obj_t* lmeter = (lv_obj_t*)lua_touserdata(L, 1);
  69. int32_t ret;
  70. ret = lv_linemeter_get_min_value(lmeter);
  71. lua_pushinteger(L, ret);
  72. return 1;
  73. }
  74. // int32_t lv_linemeter_get_max_value(lv_obj_t* lmeter)
  75. int luat_lv_linemeter_get_max_value(lua_State *L) {
  76. LV_DEBUG("CALL lv_linemeter_get_max_value");
  77. lv_obj_t* lmeter = (lv_obj_t*)lua_touserdata(L, 1);
  78. int32_t ret;
  79. ret = lv_linemeter_get_max_value(lmeter);
  80. lua_pushinteger(L, ret);
  81. return 1;
  82. }
  83. // uint16_t lv_linemeter_get_line_count(lv_obj_t* lmeter)
  84. int luat_lv_linemeter_get_line_count(lua_State *L) {
  85. LV_DEBUG("CALL lv_linemeter_get_line_count");
  86. lv_obj_t* lmeter = (lv_obj_t*)lua_touserdata(L, 1);
  87. uint16_t ret;
  88. ret = lv_linemeter_get_line_count(lmeter);
  89. lua_pushinteger(L, ret);
  90. return 1;
  91. }
  92. // uint16_t lv_linemeter_get_scale_angle(lv_obj_t* lmeter)
  93. int luat_lv_linemeter_get_scale_angle(lua_State *L) {
  94. LV_DEBUG("CALL lv_linemeter_get_scale_angle");
  95. lv_obj_t* lmeter = (lv_obj_t*)lua_touserdata(L, 1);
  96. uint16_t ret;
  97. ret = lv_linemeter_get_scale_angle(lmeter);
  98. lua_pushinteger(L, ret);
  99. return 1;
  100. }
  101. // uint16_t lv_linemeter_get_angle_offset(lv_obj_t* lmeter)
  102. int luat_lv_linemeter_get_angle_offset(lua_State *L) {
  103. LV_DEBUG("CALL lv_linemeter_get_angle_offset");
  104. lv_obj_t* lmeter = (lv_obj_t*)lua_touserdata(L, 1);
  105. uint16_t ret;
  106. ret = lv_linemeter_get_angle_offset(lmeter);
  107. lua_pushinteger(L, ret);
  108. return 1;
  109. }
  110. // void lv_linemeter_draw_scale(lv_obj_t* lmeter, lv_area_t* clip_area, uint8_t part)
  111. int luat_lv_linemeter_draw_scale(lua_State *L) {
  112. LV_DEBUG("CALL lv_linemeter_draw_scale");
  113. lv_obj_t* lmeter = (lv_obj_t*)lua_touserdata(L, 1);
  114. lv_area_t* clip_area = (lv_area_t*)lua_touserdata(L, 2);
  115. uint8_t part = (uint8_t)luaL_checkinteger(L, 3);
  116. lv_linemeter_draw_scale(lmeter ,clip_area ,part);
  117. return 0;
  118. }
  119. // bool lv_linemeter_get_mirror(lv_obj_t* lmeter)
  120. int luat_lv_linemeter_get_mirror(lua_State *L) {
  121. LV_DEBUG("CALL lv_linemeter_get_mirror");
  122. lv_obj_t* lmeter = (lv_obj_t*)lua_touserdata(L, 1);
  123. bool ret;
  124. ret = lv_linemeter_get_mirror(lmeter);
  125. lua_pushboolean(L, ret);
  126. return 1;
  127. }