#include "cw_page_ui_widget.h" /** * @brief 绘制光标 * * @param Curser_In 当前光标位置 * @param Curser_Last_In 上一时刻光标位置 */ void Print_Curser(uint8 Curser_In, uint8 Curser_Last_In) { ips114_show_string(0, Curser_Last_In, " "); ips114_show_string(0, Curser_In, ">"); } /** * @brief 打印菜单项 * */ void Print_Menu(const ITEM *item, uint8 item_sum) { ips114_show_string(0, 0, " --return--"); for (uint8 i = 0; i < item_sum; i++) { ips114_show_string(8, i + 1, item[i].text); } } /** * @brief 打印数值项 * */ void Print_Value(const ITEM *item, uint8 item_sum) { // for (uint8 i = 0; i < item_sum; i++) { // switch (Param_Data[item[i].data_tag].type) { // case EINT8: // ips114_show_int(128, i + 1, // *((int8 *)Param_Data[item[i].data_tag].p_data), 5); // break; // case EINT16: // ips114_show_int(128, i + 1, // *((int16 *)Param_Data[item[i].data_tag].p_data), 5); // break; // case EINT32: // ips114_show_int(128, i + 1, // *((int32 *)Param_Data[item[i].data_tag].p_data), 5); // break; // case EUINT8: // ips114_show_int(128, i + 1, // *((uint8 *)Param_Data[item[i].data_tag].p_data), 5); // break; // case EUINT16: // ips114_show_int(128, i + 1, // *((uint16 *)Param_Data[item[i].data_tag].p_data), 5); // break; // case EUINT32: // ips114_show_int(128, i + 1, // *((uint32 *)Param_Data[item[i].data_tag].p_data), 5); // case EFLOAT: // ips114_show_float(128, i + 1, // *((float *)Param_Data[item[i].data_tag].p_data), 5, 2); // break; // default: // break; // } // } } /** * @brief * * @param item_num * @param dir */ void Set_Vaule(ITEM *item, uint8 item_num, float step) { // if (EFLOAT == Param_Data[item[item_num].data_tag].type) { // 待修改变量为浮点 // *((float *)Param_Data[item[item_num].data_tag].p_data) += step; // ips114_show_float(128, item_num + 1, // *((float *)Param_Data[item[item_num].data_tag].p_data), 6, // 2); // return; // } // if (0 < step && // 1 > step) { // 避免步进值小于 1 时截尾为 0,不知道为啥 ceil 函数不可用 // step = 1; // } else if (0 > step && -1 < step) { // step = -1; // } // switch (Param_Data[item[item_num].data_tag].type) { // case EINT8: // *((int8 *)Param_Data[item[item_num].data_tag].p_data) += (int8)step; // ips114_show_int(128, item_num + 1, // *((int8 *)Param_Data[item[item_num].data_tag].p_data), 5); // break; // case EINT16: // *((int16 *)Param_Data[item[item_num].data_tag].p_data) += (int16)step; // ips114_show_int(128, item_num + 1, // *((int16 *)Param_Data[item[item_num].data_tag].p_data), 5); // break; // case EINT32: // *((int32 *)Param_Data[item[item_num].data_tag].p_data) += (int32)step; // ips114_show_int(128, item_num + 1, // *((int32 *)Param_Data[item[item_num].data_tag].p_data), 5); // break; // case EUINT8: // *((uint8 *)Param_Data[item[item_num].data_tag].p_data) += (uint8)step; // ips114_show_int(128, item_num + 1, // *((uint8 *)Param_Data[item[item_num].data_tag].p_data), 5); // break; // case EUINT16: // *((uint16 *)Param_Data[item[item_num].data_tag].p_data) += (uint16)step; // ips114_show_int(128, item_num + 1, // *((uint16 *)Param_Data[item[item_num].data_tag].p_data), 5); // break; // case EUINT32: // *((uint32 *)Param_Data[item[item_num].data_tag].p_data) += (uint32)step; // ips114_show_int(128, item_num + 1, // *((uint32 *)Param_Data[item[item_num].data_tag].p_data), 5); // break; // default: // break; // } }