实现CamInfo功能
This commit is contained in:
parent
56a56dd97e
commit
6182a5e3da
|
@ -8,6 +8,8 @@
|
|||
#include "sf_message_queue.h"
|
||||
#include "sf_fileMng.h"
|
||||
#include "sf_common.h"
|
||||
#include <kwrap/util.h>
|
||||
#include "sf_commu_mcu_reg.h"
|
||||
TMDEF_BEGIN_OPTIONS(NETWORK_SELECTION)
|
||||
TMDEF_OPTION_TEXT_S(NETWORK_SELECTION_1, TM_OPTION_ENABLE)
|
||||
TMDEF_OPTION_TEXT_S(NETWORK_SELECTION_2, TM_OPTION_ENABLE)
|
||||
|
@ -776,8 +778,10 @@ void Option_Password_Key(lv_obj_t* obj, uint32_t key)
|
|||
// --------------------------------------------------------------------------
|
||||
static int CameraInfoIndex = 0;
|
||||
static lv_obj_t *CameraInfolabel = NULL;
|
||||
static lv_obj_t *CameraInfoImage = NULL;
|
||||
static int CameraInfoisHidden = 1;
|
||||
static lv_obj_t *CameraInfoTabLabel = NULL;
|
||||
static int CameraInfoQlogisHidden = 1;
|
||||
static int CameraInfoDebugisHidden = 1;
|
||||
static lv_obj_t * btnm = NULL;
|
||||
static const char * map[] = {"1", "2", "3", ""};
|
||||
static void update_Camera_Info_msg(lv_obj_t* obj)
|
||||
|
@ -788,43 +792,28 @@ static void update_Camera_Info_msg(lv_obj_t* obj)
|
|||
{
|
||||
lv_color_t color = {0};
|
||||
lv_style_init(&LabelStyle);
|
||||
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&LabelStyle, LV_STATE_DEFAULT, color);
|
||||
STYLE_COLOR_PROP(0x8b, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&LabelStyle, LV_STATE_DEFAULT, color);
|
||||
STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_text_color(&LabelStyle, LV_STATE_DEFAULT, color);
|
||||
lv_style_set_text_font(&LabelStyle,LV_STATE_DEFAULT,&sf_ui_text_medium_18_8bpp);
|
||||
lv_style_set_text_line_space(&LabelStyle, LV_STATE_DEFAULT, 4);
|
||||
lv_style_set_text_line_space(&LabelStyle, LV_STATE_DEFAULT, -2);
|
||||
|
||||
lv_style_copy(&FocusedLabelStyle, &LabelStyle);
|
||||
STYLE_COLOR_PROP(0x10, 0x95, 0xC9, 0x3D) ; lv_style_set_text_color(&FocusedLabelStyle, LV_STATE_DEFAULT, color);
|
||||
|
||||
|
||||
|
||||
CameraInfolabel = lv_label_create(obj, NULL);
|
||||
lv_label_set_text(CameraInfolabel, "");
|
||||
lv_obj_set_pos(CameraInfolabel, 10, 45);
|
||||
lv_obj_set_width(CameraInfolabel, 300);
|
||||
lv_obj_add_style(CameraInfolabel, 0, &LabelStyle);
|
||||
|
||||
|
||||
// CameraInfoTabLabel = lv_label_create(obj, NULL);
|
||||
// // lv_obj_set_style_local_text_color(CameraInfoTabLabel, LV_LABEL_PART_MAIN, LV_STATE_DEFAULT, lv_color_hex(0xffffff));
|
||||
// lv_label_set_recolor(CameraInfoTabLabel, true);
|
||||
// lv_label_set_text(CameraInfoTabLabel, "#ff 1# #ffff 2# #ffffff 3#");
|
||||
// // lv_obj_set_pos(CameraInfoTabLabel, 10, 210);
|
||||
// lv_obj_set_width(CameraInfolabel, 300);
|
||||
// lv_obj_align(CameraInfoTabLabel, NULL, LV_ALIGN_IN_BOTTOM_MID, 0, 0);
|
||||
// lv_obj_add_style(CameraInfoTabLabel, 0, &FocusedLabelStyle);
|
||||
// lv_obj_set_width(CameraInfoTabLabel, 320);
|
||||
// lv_obj_set_style_text_align(CameraInfoTabLabel, LV_TXT_FLAG_CENTER, LV_STATE_DEFAULT);//ALIGN_LEFT/RIGHT/CENTER
|
||||
// lv_label_set_align(CameraInfoTabLabel, LV_LABEL_ALIGN_CENTER);
|
||||
|
||||
}
|
||||
|
||||
UIMenuStoreInfo *puiPara = sf_ui_para_get();
|
||||
char CamInfoStr[256] = {0};
|
||||
char tmpStr[64] = {0};
|
||||
UINT8 mcuversion[64] = {0};
|
||||
if(CameraInfoIndex == 0)
|
||||
{
|
||||
for(int i=0;i<6;i++)
|
||||
for(int i=0;i<7;i++)
|
||||
{
|
||||
memset(tmpStr, 0, sizeof(tmpStr));
|
||||
switch(i)
|
||||
|
@ -833,42 +822,43 @@ static void update_Camera_Info_msg(lv_obj_t* obj)
|
|||
strcat(CamInfoStr, "Ver:R5.0\n");
|
||||
break;
|
||||
case 1:
|
||||
if(!CameraInfoisHidden)
|
||||
if(!CameraInfoQlogisHidden)
|
||||
{
|
||||
sprintf(tmpStr, "Qlog %s\n", puiPara->QLogSwitch ? "ON" : "OFF");
|
||||
strcat(CamInfoStr, tmpStr);
|
||||
}
|
||||
else if(!CameraInfoisHidden)
|
||||
strcat(CamInfoStr, "7MR5RCwD801\n");
|
||||
}
|
||||
else if(puiPara->QLogSwitch)
|
||||
{
|
||||
strcat(CamInfoStr, "Qlog ON\n");
|
||||
}
|
||||
else
|
||||
{
|
||||
strcat(CamInfoStr, "Qlog OFF\n");
|
||||
}
|
||||
strcat(CamInfoStr, "\n");
|
||||
break;
|
||||
case 2:
|
||||
sprintf(tmpStr, "IMEI:%s\n", puiPara->ModuleImei);
|
||||
sf_mcu_version_get(mcuversion);
|
||||
sprintf(tmpStr, "MCU:%s\n",mcuversion);
|
||||
strcat(CamInfoStr, tmpStr);
|
||||
break;
|
||||
case 3:
|
||||
sprintf(tmpStr, "MCU:\n");
|
||||
strcat(CamInfoStr, tmpStr);
|
||||
strcat(CamInfoStr, "\n");
|
||||
break;
|
||||
case 4:
|
||||
if(!CameraInfoisHidden)
|
||||
{
|
||||
strcat(CamInfoStr, "7MR5RCwD801\n");
|
||||
}
|
||||
else if(puiPara->DebugMode)
|
||||
{
|
||||
strcat(CamInfoStr, "Debug ON\n");
|
||||
}
|
||||
else
|
||||
{
|
||||
strcat(CamInfoStr, "Debug OFF\n");
|
||||
}
|
||||
sprintf(tmpStr, "IMEI:%s\n", puiPara->ModuleImei);
|
||||
strcat(CamInfoStr, tmpStr);
|
||||
break;
|
||||
case 5:
|
||||
if(!CameraInfoDebugisHidden)
|
||||
{
|
||||
sprintf(tmpStr, "Debug %s\n", puiPara->DebugMode ? "ON" : "OFF");
|
||||
strcat(CamInfoStr, tmpStr);
|
||||
}
|
||||
else if(!CameraInfoisHidden)
|
||||
{
|
||||
sprintf(tmpStr, "%s\n", puiPara->ModuleSubver);
|
||||
strcat(CamInfoStr, tmpStr);
|
||||
}
|
||||
else
|
||||
strcat(CamInfoStr, "\n");
|
||||
break;
|
||||
case 6:
|
||||
sprintf(tmpStr, "MOD:%s\n", puiPara->ModuleVer);
|
||||
strcat(CamInfoStr, tmpStr);
|
||||
break;
|
||||
|
@ -879,7 +869,7 @@ static void update_Camera_Info_msg(lv_obj_t* obj)
|
|||
}
|
||||
else if(CameraInfoIndex == 1)
|
||||
{
|
||||
for(int i=0;i<5;i++)
|
||||
for(int i=0;i<7;i++)
|
||||
{
|
||||
memset(tmpStr, 0, sizeof(tmpStr));
|
||||
switch(i)
|
||||
|
@ -889,24 +879,35 @@ static void update_Camera_Info_msg(lv_obj_t* obj)
|
|||
strcat(CamInfoStr, tmpStr);
|
||||
break;
|
||||
case 1:
|
||||
sprintf(tmpStr, "ICCID-A:\n");
|
||||
strcat(CamInfoStr, tmpStr);
|
||||
strcat(CamInfoStr, "\n");
|
||||
break;
|
||||
case 2:
|
||||
sprintf(tmpStr, "ICCID-V:\n");
|
||||
sprintf(tmpStr, "ICCID-A:%s\n", puiPara->SimIccidA);
|
||||
strcat(CamInfoStr, tmpStr);
|
||||
break;
|
||||
case 3:
|
||||
strcat(CamInfoStr, "\n");
|
||||
break;
|
||||
case 4:
|
||||
sprintf(tmpStr, "ICCID-V:%s\n", puiPara->SimIccidV);
|
||||
strcat(CamInfoStr, tmpStr);
|
||||
break;
|
||||
case 5:
|
||||
strcat(CamInfoStr, "\n");
|
||||
break;
|
||||
case 6:
|
||||
sprintf(tmpStr, "SSID:%s\n", puiPara->strSSID);
|
||||
strcat(CamInfoStr, tmpStr);
|
||||
break;
|
||||
case 4:
|
||||
sprintf(tmpStr, "BLE:%s\n", puiPara->BluSsid);
|
||||
strcat(CamInfoStr, tmpStr);
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if(CameraInfoIndex == 2)
|
||||
{
|
||||
sprintf(tmpStr, "BLE:%s\n", puiPara->BluSsid);
|
||||
strcat(CamInfoStr, tmpStr);
|
||||
}
|
||||
|
||||
lv_btnmatrix_set_focused_btn(btnm, CameraInfoIndex);
|
||||
|
@ -919,42 +920,29 @@ void show_Camera_Info_page(lv_obj_t* obj)
|
|||
{
|
||||
CameraInfoIndex = 0;
|
||||
CameraInfoisHidden = 1;
|
||||
CameraInfoQlogisHidden = 1;
|
||||
CameraInfoDebugisHidden = 1;
|
||||
|
||||
lv_color_t color = {0};
|
||||
|
||||
static lv_style_t style_bg;
|
||||
lv_style_init(&style_bg);
|
||||
lv_style_set_pad_all(&style_bg, LV_STATE_DEFAULT, 0);
|
||||
lv_style_set_clip_corner(&style_bg, LV_STATE_DEFAULT, true);
|
||||
lv_style_set_radius(&style_bg, LV_STATE_DEFAULT, LV_RADIUS_CIRCLE);
|
||||
lv_style_set_border_width(&style_bg, LV_STATE_DEFAULT, 0);
|
||||
color.full = 0x1; lv_style_set_bg_color(&style_bg, LV_STATE_DEFAULT, color);
|
||||
color.full = 0x1; lv_style_set_bg_color(&style_bg, LV_STATE_FOCUSED, color);
|
||||
|
||||
static lv_style_t style_btn;
|
||||
lv_style_init(&style_btn);
|
||||
lv_style_set_radius(&style_btn, LV_STATE_DEFAULT, 0);
|
||||
lv_style_set_border_width(&style_btn, LV_STATE_DEFAULT, 1);
|
||||
lv_style_set_border_opa(&style_btn, LV_STATE_DEFAULT, LV_OPA_50);
|
||||
lv_style_set_border_side(&style_btn, LV_STATE_DEFAULT, LV_BORDER_SIDE_INTERNAL);
|
||||
lv_style_set_radius(&style_btn, LV_STATE_DEFAULT, 0);
|
||||
|
||||
color.full = 0x1; lv_style_set_bg_color(&style_btn, LV_STATE_DEFAULT, color);
|
||||
color.full = 0x1; lv_style_set_bg_color(&style_btn, LV_STATE_FOCUSED, color);
|
||||
color.full = 0x2; lv_style_set_text_color(&style_btn, LV_STATE_DEFAULT, color);
|
||||
color.full = 0xc8;lv_style_set_text_color(&style_btn, LV_STATE_FOCUSED, color);
|
||||
|
||||
init_Matrix_style();
|
||||
|
||||
btnm = lv_btnmatrix_create(lv_scr_act(), NULL);
|
||||
lv_btnmatrix_set_map(btnm, map);
|
||||
lv_obj_add_style(btnm, 0, &style_bg);
|
||||
lv_obj_add_style(btnm, 1, &style_btn);
|
||||
lv_obj_set_pos(btnm, 10, 210);
|
||||
lv_obj_set_size(btnm, 225, 35);
|
||||
lv_obj_add_style(btnm, 0, &gMatrixStylebg);
|
||||
lv_obj_add_style(btnm, 1, &gMatrixStylebtn);
|
||||
lv_obj_set_pos(btnm, 130, 207);
|
||||
lv_obj_set_size(btnm, 60, 25);
|
||||
|
||||
lv_btnmatrix_set_btn_ctrl_all(btnm, LV_BTNMATRIX_CTRL_CHECKABLE);
|
||||
lv_btnmatrix_set_focused_btn(btnm, 0);
|
||||
|
||||
CameraInfoImage = lv_img_create(lv_scr_act(), NULL);
|
||||
lv_obj_set_hidden(CameraInfoImage, false);
|
||||
lv_obj_set_click(CameraInfoImage, false);
|
||||
lv_obj_set_drag(CameraInfoImage, false);
|
||||
lv_obj_set_pos(CameraInfoImage, 93, 200);
|
||||
lv_obj_set_size(CameraInfoImage, 134, 40);
|
||||
lv_img_set_src(CameraInfoImage, &sf_next3);
|
||||
|
||||
update_Camera_Info_msg(obj);
|
||||
|
||||
}
|
||||
|
@ -963,49 +951,85 @@ void hidde_Camera_Info_page(void)
|
|||
{
|
||||
printf("[hidde_Camera_Info_page]\n");
|
||||
CameraInfoIndex = 0;
|
||||
CameraInfoisHidden = 0;
|
||||
CameraInfoisHidden = 1;
|
||||
CameraInfoQlogisHidden = 1;
|
||||
CameraInfoDebugisHidden = 1;
|
||||
if(CameraInfolabel)
|
||||
{
|
||||
lv_obj_del(CameraInfolabel);
|
||||
}
|
||||
if(CameraInfoTabLabel)
|
||||
if(CameraInfoImage)
|
||||
{
|
||||
lv_obj_del(CameraInfoTabLabel);
|
||||
lv_obj_del(CameraInfoImage);
|
||||
}
|
||||
if(btnm)
|
||||
{
|
||||
lv_obj_del(btnm);
|
||||
}
|
||||
}
|
||||
|
||||
void Option_CAMERA_INFO_Key_Long_Press(lv_obj_t* obj, uint32_t key)
|
||||
{
|
||||
UIMenuStoreInfo *puiPara = sf_ui_para_get();
|
||||
printf("[%s]key:%d\n", __FUNCTION__, key);
|
||||
switch(key)
|
||||
{
|
||||
case LV_USER_KEY_NEXT:
|
||||
puiPara->QLogSwitch = puiPara->QLogSwitch ? 0 : 1;
|
||||
CameraInfoQlogisHidden = 0;
|
||||
update_Camera_Info_msg(obj);
|
||||
break;
|
||||
case LV_USER_KEY_PREV:
|
||||
puiPara->DebugMode = puiPara->DebugMode ? 0 : 1;
|
||||
CameraInfoDebugisHidden = 0;
|
||||
update_Camera_Info_msg(obj);
|
||||
break;
|
||||
case LV_USER_KEY_LEFT:
|
||||
break;
|
||||
case LV_USER_KEY_RIGHT:
|
||||
CameraInfoisHidden = 0;
|
||||
update_Camera_Info_msg(obj);
|
||||
break;
|
||||
case LV_KEY_ENTER:
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void Option_CAMERA_INFO_Key(lv_obj_t* obj, uint32_t key)
|
||||
{
|
||||
UIMenuStoreInfo *puiPara = sf_ui_para_get();
|
||||
printf("key:%d\n",key);
|
||||
printf("[%s]key:%d\n", __FUNCTION__, key);
|
||||
switch(key)
|
||||
{
|
||||
case LV_USER_KEY_NEXT:
|
||||
printf("\033[33m[Option_CAMERA_INFO_Key]s\033[0m\n");
|
||||
puiPara->QLogSwitch = puiPara->QLogSwitch ? 0 : 1;
|
||||
CameraInfoQlogisHidden = 1;
|
||||
update_Camera_Info_msg(obj);
|
||||
break;
|
||||
case LV_USER_KEY_PREV:
|
||||
printf("\033[33m[Option_CAMERA_INFO_Key]w\033[0m\n");
|
||||
puiPara->DebugMode = puiPara->DebugMode ? 0 : 1;
|
||||
CameraInfoDebugisHidden = 1;
|
||||
update_Camera_Info_msg(obj);
|
||||
break;
|
||||
case LV_USER_KEY_LEFT:
|
||||
printf("\033[33m[Option_CAMERA_INFO_Key]a\033[0m\n");
|
||||
CameraInfoIndex--;
|
||||
if(CameraInfoIndex < 0)
|
||||
CameraInfoIndex = 0;
|
||||
update_Camera_Info_msg(obj);
|
||||
break;
|
||||
case LV_USER_KEY_RIGHT:
|
||||
printf("\033[33m[Option_CAMERA_INFO_Key]d\033[0m\n");
|
||||
CameraInfoIndex++;
|
||||
if(CameraInfoIndex > 1)
|
||||
CameraInfoIndex = 1;
|
||||
if(!CameraInfoisHidden)
|
||||
{
|
||||
CameraInfoisHidden = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
CameraInfoIndex++;
|
||||
if(CameraInfoIndex > 2)
|
||||
CameraInfoIndex = 2;
|
||||
}
|
||||
update_Camera_Info_msg(obj);
|
||||
break;
|
||||
case LV_KEY_ENTER:
|
||||
printf("\033[33m[Option_CAMERA_INFO_Key]SELECT\033[0m\n");
|
||||
lv_plugin_scr_close(obj, gen_nvtmsg_data(NVTRET_ENTER_MENU, 0));
|
||||
hidde_Camera_Info_page();
|
||||
break;
|
||||
|
@ -1043,16 +1067,16 @@ void show_Camera_Name_page(lv_obj_t* obj)
|
|||
// lv_style_set_bg_opa(&Camera_Name_style,LV_STATE_DEFAULT,0);
|
||||
// lv_style_set_border_width(&Camera_Name_style,LV_STATE_DEFAULT,0);
|
||||
// lv_style_set_text_font(&Camera_Name_style,LV_STATE_FOCUSED|LV_STATE_DEFAULT,&sf_ui_text_bold_20_8bpp);
|
||||
// STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&Camera_Name_style, LV_STATE_DEFAULT, color);
|
||||
// STYLE_COLOR_PROP(0x8b, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&Camera_Name_style, LV_STATE_DEFAULT, color);
|
||||
// STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_text_color(&Camera_Name_style, LV_STATE_DEFAULT, color);
|
||||
// STYLE_COLOR_PROP(0x06, 0x24, 0xfd, 0x0d) ; lv_style_set_text_color(&Camera_Name_style, LV_STATE_FOCUSED, color);
|
||||
|
||||
static lv_style_t Camera_Name_style;
|
||||
lv_style_init(&Camera_Name_style);
|
||||
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&Camera_Name_style, LV_STATE_DEFAULT, color);
|
||||
STYLE_COLOR_PROP(0x8b, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&Camera_Name_style, LV_STATE_DEFAULT, color);
|
||||
STYLE_COLOR_PROP(0x02, 0xff, 0xff, 0xff) ; lv_style_set_text_color(&Camera_Name_style, LV_STATE_DEFAULT, color);
|
||||
lv_style_set_text_font(&Camera_Name_style,LV_STATE_DEFAULT,&sf_ui_text_bold_20_8bpp);
|
||||
STYLE_COLOR_PROP(0x01, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&Camera_Name_style, LV_STATE_FOCUSED, color);
|
||||
STYLE_COLOR_PROP(0x8b, 0x00, 0x00, 0x00) ; lv_style_set_bg_color(&Camera_Name_style, LV_STATE_FOCUSED, color);
|
||||
STYLE_COLOR_PROP(0x06, 0x24, 0xfd, 0x0d) ; lv_style_set_text_color(&Camera_Name_style, LV_STATE_FOCUSED, color);
|
||||
|
||||
for(int i = 0; i < 4; i++) {
|
||||
|
|
|
@ -18,5 +18,6 @@ extern void hidde_Camera_Name_page(void);
|
|||
extern void Option_Network_Selection_Key(lv_obj_t* obj, uint32_t key);
|
||||
extern void Option_Password_Key(lv_obj_t* obj, uint32_t key);
|
||||
extern void Option_CAMERA_INFO_Key(lv_obj_t* obj, uint32_t key);
|
||||
extern void Option_CAMERA_INFO_Key_Long_Press(lv_obj_t* obj, uint32_t key);
|
||||
extern void Option_Camera_Name_Key(lv_obj_t* obj, uint32_t key);
|
||||
#endif
|
||||
|
|
|
@ -11,6 +11,9 @@
|
|||
// #include "sf_4g_lpa.h"
|
||||
|
||||
#define OPTION_PAGE_NUM 5
|
||||
#define LONG_PRESS_INTERVAL 500
|
||||
|
||||
static unsigned long KeyPressingTimeMs = 0;
|
||||
|
||||
static lv_group_t* gp = NULL;
|
||||
static lv_obj_t* menu_option = NULL;
|
||||
|
@ -835,11 +838,29 @@ void UIFlowMenuCommonOptionEventCallback(lv_obj_t* obj, lv_event_t event)
|
|||
// LV_MenuOption_OnSelected(obj);
|
||||
// break;
|
||||
|
||||
case LV_USER_EVENT_KEY_LONG_PRESS:
|
||||
{
|
||||
uint32_t* key = (uint32_t*)lv_event_get_data();
|
||||
// printf("\033[33m[UIFlowMenuCommonOptionEventCallback]LV_USER_EVENT_KEY_LONG_PRESS key:%d\033[0m\n", *key);
|
||||
|
||||
switch(itemID)
|
||||
{
|
||||
case IDM_CAMERA_INFO:
|
||||
KeyPressingTimeMs += LONG_PRESS_INTERVAL;
|
||||
if(KeyPressingTimeMs == 10 * 1000)
|
||||
Option_CAMERA_INFO_Key_Long_Press(obj, *key);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
// case LV_EVENT_KEY:
|
||||
case LV_USER_EVENT_KEY_RELEASE:
|
||||
{
|
||||
uint32_t* key = (uint32_t*)lv_event_get_data();
|
||||
printf("\033[33m[UIFlowMenuCommonOptionEventCallback]LV_EVENT_KEY key:%d\033[0m\n", *key);
|
||||
printf("\033[33m[UIFlowMenuCommonOptionEventCallback]LV_USER_EVENT_KEY_RELEASE key:%d\033[0m\n", *key);
|
||||
/* handle key event */
|
||||
switch(itemID)
|
||||
{
|
||||
|
@ -954,7 +975,7 @@ void UIFlowMenuCommonOptionEventCallback(lv_obj_t* obj, lv_event_t event)
|
|||
break;
|
||||
}
|
||||
|
||||
|
||||
KeyPressingTimeMs = 0;
|
||||
|
||||
/***********************************************************************************
|
||||
* IMPORTANT!!
|
||||
|
|
Loading…
Reference in New Issue
Block a user