From: dxy15521469561 <1731678236@qq.com> Date: Fri, 7 Jun 2024 09:58:00 +0000 (+0800) Subject: 调整UI: X-Git-Url: http://git.snicker.com.cn/css/static/gitweb.css?a=commitdiff_plain;h=1517698f48984085e213896e312c260cf0f4b11b;p=mirrors%2FASR1603_G5.git 调整UI: --- diff --git a/2.sdk/Helios_SDK/services/microPython/ports/quectel/core/motor.py b/2.sdk/Helios_SDK/services/microPython/ports/quectel/core/motor.py index cd31639b..efada6f1 100644 --- a/2.sdk/Helios_SDK/services/microPython/ports/quectel/core/motor.py +++ b/2.sdk/Helios_SDK/services/microPython/ports/quectel/core/motor.py @@ -99,6 +99,8 @@ class motorEventManager(Abstract):#马达事件 def close_motor_infor(self,event,msg): print("close_motor_infor!!!") + if self.motor_enable == 0:#未使能马达定时器 + return close_motor() self.motor_enable = 0#马达使能 self.motor_total_time = 0#总的时间 diff --git a/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/ai.py b/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/ai.py index ceac1573..d9c9b19a 100644 --- a/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/ai.py +++ b/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/ai.py @@ -62,18 +62,6 @@ style_common_bg_rect_btn_pressed.set_bg_opa(100) style_common_bg_rect_btn_pressed.set_border_width(0) style_common_bg_rect_btn_pressed.set_shadow_opa(0) -# style_font_20_ai_green = lv.style_t() -# style_font_20_ai_green.init() -# style_font_20_ai_green.set_text_color(lv.color_make(0x00, 0xf0, 0x00)) -# style_font_20_ai_green.set_bg_color(lv.color_make(0x00, 0xff, 0x2a)) -# style_font_20_ai_green.set_text_font_v2("font_28.bin",28,0) - -# style_font_20_ai_white = lv.style_t() -# style_font_20_ai_white.init() -# style_font_20_ai_white.set_text_color(lv.color_make(0x00, 0xf0, 0x00)) -# style_font_20_ai_white.set_bg_color(lv.color_make(0xff, 0xff, 0xff)) -# style_font_20_ai_white.set_text_font_v2("font_28.bin",28,0) - style_font_20_ai_white = lv.style_t() style_font_20_ai_white.init() style_font_20_ai_white.set_radius(0) @@ -192,7 +180,8 @@ class AIScreen(Screen):#AI_GUI AI_press_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.talking_cb(e)), lv.EVENT.RELEASED, None) def initialization(self): - + AI_label.set_text(" ") + AI_press_label_countdown.set_text(" ") self.aud.setVolume(11)#设置最大声录音 self.AI_audio_queue = Queue(100) self.AI_audio_queue_thread_id = _thread.start_new_thread(self.AI_audio_queue_thread, ()) @@ -214,19 +203,6 @@ class AIScreen(Screen):#AI_GUI print('audio-play start.') elif event == 7: self.audio_play_state = 0 - # if self.AI_audio_queue.size() > 0: - # data = self.AI_audio_queue.get() - # print("audio_queue:data:{}".format(len(data))) - # if len(data) > 1: - # try: - # # while self.audio_play_state : - # # utime.sleep_ms(1) - # EventMesh.publish("system_sleep_rest")#防止黑屏 - # tmp=self.aud.playStream(3, data)#播放音频流文件 - # self.audio_play_state =1 - # print("playStream:{}".format(tmp)) - # except Exception as e: - # usys.print_exception(e) print('audio-play finish.') #按下录音 @@ -571,13 +547,6 @@ class AIScreen(Screen):#AI_GUI if data != None: try: - #data["func"](data["data"]) - # self.record.stop() - # self.aud.playStream(4, data) - # self.record.stream_start(audio.Record.AMRNB, 8000, 60) - # 发送数据 - #bytes_data = bytes(data[1]) - #data[0].send(data[1]) if data[0] == self.AI_client_chat_num: if self.AI_client_chat_isconnect == 0: self.websocket_connect_chat() @@ -698,6 +667,7 @@ class AIScreen(Screen):#AI_GUI pass def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) pass @@ -806,6 +776,7 @@ class AINoSimScreen(Screen):# EventMesh.publish("return_prev_screen") def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("return_prev_screen") al_talk_screen = None al_talk_screen_title1 = None @@ -887,6 +858,7 @@ class AITalkScreen(Screen):# EventMesh.publish("return_prev_screen") def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("return_prev_screen") @@ -983,6 +955,7 @@ class AIListenScreen(Screen):# # EventMesh.publish("return_prev_screen") def btn8_press(self): + pass # EventMesh.publish("return_prev_screen") diff --git a/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/alarm.py b/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/alarm.py index cc935401..844b2898 100644 --- a/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/alarm.py +++ b/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/alarm.py @@ -875,6 +875,7 @@ class PopupAlarmScreen(Screen): def btn8_press(self): self.close_timer() + EventMesh.publish("watch_top_show") EventMesh.publish("return_prev_screen") ALARM_LIST_SIZE = 70 @@ -891,11 +892,15 @@ class ClkListScreen(Screen): # lv.EVENT.PRESSED, None) self.weekdays_list = ["日","一","二","三","四","五","六"] EventMesh.subscribe("push_update_alarm_show", self.update_show_info) + clk_list_screen.add_event_cb(lambda e: EventMesh.callback_wrapper(self.edit_alarm(e)), + lv.EVENT.GESTURE, None) self.alarm_show_list = lv.obj(clk_list_screen) self.alarm_show_list.set_pos(0, 60) self.alarm_show_list.set_size(240, LCD_SIZE_H-60) self.alarm_show_list.set_scrollbar_mode(lv.SCROLLBAR_MODE.OFF) self.alarm_show_list.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT) + self.alarm_show_list.add_event_cb(lambda e: EventMesh.callback_wrapper(self.edit_alarm(e)), + lv.EVENT.GESTURE, None) self.timer=osTimer() for i in range(self.MXA_clk_num): @@ -1012,6 +1017,15 @@ class ClkListScreen(Screen): self.alarm_show_list.add_flag(lv.obj.FLAG.HIDDEN) def edit_alarm(self, e):#暂时屏蔽 + code = e.get_code() + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("return_prev_screen") + elif code == lv.EVENT.SHORT_CLICKED: + pass return idx = int(e.get_target().get_child(0).get_text()) print("edit!!!!!!!!!!!!:",idx) @@ -1052,9 +1066,6 @@ class ClkListScreen(Screen): def btn1_release(self): EventMesh.publish("load_screen", {"screen": "toolbox"}) - def done_left_to_right(self): - EventMesh.publish("return_prev_screen") - def btn8_press(self): EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) @@ -1098,6 +1109,7 @@ class NewEditClk(Screen): EventMesh.publish("load_screen", {"screen": "clk_list"}) def btn8_press(self): + EventMesh.publish("load_screen", {"screen": "clk_list"}) class CLKTimeScreen(Screen): diff --git a/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/appAlipay.py b/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/appAlipay.py index f79360d6..11e5d02b 100644 --- a/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/appAlipay.py +++ b/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/appAlipay.py @@ -513,15 +513,16 @@ class Alipay_1_1(Screen): super().__init__() self.timer = osTimer() self.meta = alipay_1_1_screen + alipay_1_1_screen.add_event_cb(lambda e: EventMesh.callback_wrapper(self.calling_cb(e,1)), lv.EVENT.GESTURE, None) #付款码 - alipay_imgbtn_3.add_event_cb(lambda e: EventMesh.callback_wrapper(self.alipay_paycode(e)), - lv.EVENT.PRESSED, None) + alipay_imgbtn_3.add_event_cb(lambda e: EventMesh.callback_wrapper(self.calling_cb(e,2)), + lv.EVENT.SHORT_CLICKED, None) #收钱 - alipay_imgbtn_2.add_event_cb(lambda e: EventMesh.callback_wrapper(self.alipay_collect(e)), - lv.EVENT.PRESSED, None) + alipay_imgbtn_2.add_event_cb(lambda e: EventMesh.callback_wrapper(self.calling_cb(e,3)), + lv.EVENT.SHORT_CLICKED, None) #家长设置 - alipay_imgbtn_1.add_event_cb(lambda e: EventMesh.callback_wrapper(self.alipay_parent(e)), - lv.EVENT.PRESSED, None) + alipay_imgbtn_1.add_event_cb(lambda e: EventMesh.callback_wrapper(self.calling_cb(e,4)), + lv.EVENT.SHORT_CLICKED, None) def initialization(self): EventMesh.publish("set_Alipay_Ui_isOpen",1) @@ -529,9 +530,33 @@ class Alipay_1_1(Screen): def Close(self): EventMesh.publish("set_Alipay_Ui_isOpen",0) pass - + + def calling_cb(self,e,msg): + code = e.get_code() + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("load_screen", {"screen": "main_menu"}) + elif code == lv.EVENT.SHORT_CLICKED: + if msg == 2: + self.timer.start(1*1000,1,self.fun) + elif msg == 3: + EventMesh.publish("get_collect_code") + elif msg == 4: + EventMesh.publish("get_parent_code") + def alipay_paycode(self,e): - self.timer.start(1*1000,1,self.fun) + code = e.get_code() + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("load_screen", {"screen": "main_menu"}) + elif code == lv.EVENT.SHORT_CLICKED: + self.timer.start(1*1000,1,self.fun) # Alipay.alipay.msg_send(3,"","") #发送获取付款码消息 def fun(self,*agrc): @@ -547,13 +572,30 @@ class Alipay_1_1(Screen): # EventMesh.publish("get_payment_code") def alipay_collect(self,e): - EventMesh.publish("get_collect_code") + code = e.get_code() + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("load_screen", {"screen": "main_menu"}) + elif code == lv.EVENT.SHORT_CLICKED: + + EventMesh.publish("get_collect_code") # EventMesh.publish("load_screen", {"screen": "alipay_collect"}) def Close(self): self.timer.stop() def alipay_parent(self,e): - EventMesh.publish("get_parent_code") + code = e.get_code() + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("load_screen", {"screen": "main_menu"}) + elif code == lv.EVENT.SHORT_CLICKED: + EventMesh.publish("get_parent_code") def done_return(self): EventMesh.publish("load_screen", {"screen": "main_menu"}) @@ -905,6 +947,7 @@ class Alipay_paycode(Screen): def __init__(self): super().__init__() self.meta = alipay_paycode_screen + alipay_paycode_screen.add_event_cb(lambda e:EventMesh.callback_wrapper(self.fun_bt(e)), lv.EVENT.GESTURE, None) self.timer = osTimer() EventMesh.subscribe("set_alipay_code",self.set_alipay_code) EventMesh.subscribe("get_alipay_code",self.get_alipay_code) @@ -921,6 +964,15 @@ class Alipay_paycode(Screen): alipay_paycode_alipay_qr.update(self.alipay_qr_data,len(self.alipay_qr_data)) self.update_page_state = code_128_generate_barcode1(alipay_paycode_screen,self.alipay_qr_data,240,100) + def fun_bt(self,e): + code = e.get_code() + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("load_screen", {"screen": "alipay_1_1"}) + def initialization(self): print("alipay_paycode:initialization") self.count = 0 @@ -974,6 +1026,8 @@ class Alipay_paycode(Screen): EventMesh.publish("get_payment_code") EventMesh.publish("publish_message_event_ui",{"func":self.update_show,"data":0}) + # def done_left_to_right(self): + def done_return(self): EventMesh.publish("load_screen", {"screen": "alipay_1_1"}) @@ -982,6 +1036,7 @@ class Alipay_paycode(Screen): EventMesh.publish("load_screen", {"screen": "main_menu"}) def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) @@ -1051,6 +1106,7 @@ class Alipay_pay_success(Screen): EventMesh.publish("load_screen", {"screen": "main_menu"}) def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) alipay_collect_screen = lv.obj() @@ -1083,7 +1139,7 @@ class Alipay_collect(Screen): def __init__(self): super().__init__() self.meta = alipay_collect_screen - + alipay_collect_screen.add_event_cb(lambda e:EventMesh.callback_wrapper(self.fun(e)), lv.EVENT.GESTURE, None) def initialization(self): @@ -1097,6 +1153,14 @@ class Alipay_collect(Screen): def Close(self): EventMesh.publish("set_Alipay_Ui_isOpen",0) pass + def fun(self,e): + code = e.get_code() + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("load_screen", {"screen": "alipay_1_1"}) def done_return(self): EventMesh.publish("load_screen", {"screen": "alipay_1_1"}) @@ -1105,6 +1169,7 @@ class Alipay_collect(Screen): EventMesh.publish("load_screen", {"screen": "main_menu"}) def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) alipay_parent_screen = lv.obj() @@ -1150,7 +1215,7 @@ alipay_parent_bg_color = lv.palette_lighten(lv.PALETTE.LIGHT_BLUE, 5) alipay_parent_fg_color = lv.palette_darken(lv.PALETTE.BLUE, 4) alipay_parent_alipay_qr = lv.qrcode(alipay_parent_screen, 150, alipay_parent_fg_color, alipay_parent_bg_color) -alipay_parent_alipay_qr.set_pos(45,171) +alipay_parent_alipay_qr.set_pos(45,120) # Add a border with bg_color alipay_parent_alipay_qr.set_style_border_color(alipay_parent_bg_color, 0) alipay_parent_alipay_qr.set_style_border_width(5, 0) @@ -1162,10 +1227,11 @@ class Alipay_parent(Screen): def __init__(self): super().__init__() self.meta = alipay_parent_screen - + alipay_parent_screen.add_event_cb(lambda e:EventMesh.callback_wrapper(self.fun(e)), lv.EVENT.GESTURE, None) def initialization(self): + EventMesh.publish("set_Alipay_Ui_isOpen",1) def post_processor_after_initialization(self): @@ -1175,7 +1241,15 @@ class Alipay_parent(Screen): def Close(self): EventMesh.publish("set_Alipay_Ui_isOpen",0) - pass + + def fun(self,e): + code = e.get_code() + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("load_screen", {"screen": "alipay_1_1"}) def done_return(self): EventMesh.publish("load_screen", {"screen": "alipay_1_1"}) @@ -1184,4 +1258,5 @@ class Alipay_parent(Screen): EventMesh.publish("load_screen", {"screen": "main_menu"}) def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) \ No newline at end of file diff --git a/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/appFactoryMode.py b/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/appFactoryMode.py index 79513fb3..fa7cd47d 100644 --- a/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/appFactoryMode.py +++ b/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/appFactoryMode.py @@ -192,6 +192,7 @@ class FactoryModeScreen(Screen): EventMesh.publish("return_prev_screen") def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) #显示txt日志 @@ -301,6 +302,7 @@ class FactoryModeLogScreen(Screen): EventMesh.publish("return_prev_screen") def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) #显示x y z 三轴数据 FactoryModestep_screen = lv.obj() @@ -369,6 +371,7 @@ class FactoryModestepScreen(Screen): EventMesh.publish("return_prev_screen") def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) @@ -483,6 +486,7 @@ class FactoryModeHsensorTestScreen(Screen): EventMesh.publish("return_prev_screen") def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) @@ -533,6 +537,7 @@ class FactoryModeBatTestScreen(Screen): EventMesh.publish("return_prev_screen") def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) @@ -575,6 +580,7 @@ class FactoryModeAlipayInitScreen(Screen): EventMesh.publish("load_screen", {"screen": "factorymode"}) def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) FactoryModeLocation_screen = lv.obj() @@ -714,4 +720,5 @@ class FactoryModeLocationScreen(Screen): def done_left_to_right(self): EventMesh.publish("return_prev_screen") def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) \ No newline at end of file diff --git a/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/appWechat.py b/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/appWechat.py index b572074a..b74df564 100644 --- a/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/appWechat.py +++ b/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/appWechat.py @@ -649,6 +649,7 @@ class NewWechatPopupScreen(Screen): EventMesh.publish("load_screen", {"screen": "main_menu"}) def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) diff --git a/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/mgr.py b/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/mgr.py index fdac57f6..22a2f0b9 100644 --- a/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/mgr.py +++ b/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/mgr.py @@ -210,14 +210,13 @@ class CountdownManager(Abstract): print("self.time_cb:{} self.time_play:{} self.total:{} self.total_sec:{}".format(self.time_cb,self.time_play, self.total,self.total_sec)) self.total = self.total - reduce if self.total <= 0: + EventMesh.publish("load_screen", {"screen": "countdown_end"}) self.total = 0 self.time_cb = 0 self.time_play = 0 self.sec = 0 self.min = 0 - self.hour = 0 - - EventMesh.publish("load_screen", {"screen": "countdown_end"}) + self.hour = 0 return self.total_sec = time_tmp diff --git a/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/motor.py b/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/motor.py index cd31639b..efada6f1 100644 --- a/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/motor.py +++ b/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/motor.py @@ -99,6 +99,8 @@ class motorEventManager(Abstract):#马达事件 def close_motor_infor(self,event,msg): print("close_motor_infor!!!") + if self.motor_enable == 0:#未使能马达定时器 + return close_motor() self.motor_enable = 0#马达使能 self.motor_total_time = 0#总的时间 diff --git a/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/ui.py b/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/ui.py index 304ddf35..8e89a233 100644 --- a/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/ui.py +++ b/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/ui.py @@ -1134,6 +1134,7 @@ class CallLogScreen(Screen): # EventMesh.publish("load_screen", {"screen": "main_menu"}) def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) @@ -1991,6 +1992,7 @@ class NewMessageScreen(Screen): EventMesh.publish("return_prev_screen") def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) remove_message_popup_screen = None @@ -2053,6 +2055,7 @@ class RemoveMessageScreen(Screen):#删除短信弹窗框 EventMesh.publish("return_prev_screen") def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) message_full_screen = None message_full_label = None @@ -2157,6 +2160,7 @@ class MessageFullScreen(Screen): EventMesh.publish("return_prev_screen") def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) ############短信############################### MSG_FLAG = 0 @@ -2599,6 +2603,7 @@ class PopupScreen(Screen): # EventMesh.publish("load_screen", {"screen": "main_menu"}) def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) @@ -2671,6 +2676,7 @@ class MsgDetailScreen(Screen): EventMesh.publish("return_prev_screen") def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "popup"}) @@ -2851,7 +2857,8 @@ class ToolboxScreen(Screen): EventMesh.publish("load_screen", {"screen": "main_menu"}) elif code == lv.EVENT.SHORT_CLICKED: - EventMesh.publish("load_screen", {"screen": "{}".format(msg)}) + if msg != "void": + EventMesh.publish("load_screen", {"screen": "{}".format(msg)}) def done_DOWN(self):#下滑 scroll_y = toolbox_cont.get_scroll_y() @@ -3779,6 +3786,7 @@ class StepScreen(Screen): step_screen = lv.obj() print("step_screen") step_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT) + step_screen.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun(e)), lv.EVENT.GESTURE, None) step_label = lv.label(step_screen) step_label.set_pos(10, 30) @@ -3815,7 +3823,14 @@ class StepScreen(Screen): def Close(self): self.timer.stop() - + def fun(self, e): + code = e.get_code() + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("return_prev_screen") # EventMesh.publish("load_screen", {"screen": "toolbox"}) # def done_return(self): @@ -3824,10 +3839,6 @@ class StepScreen(Screen): def btn1_release(self): EventMesh.publish("load_screen", {"screen": "toolbox"}) - def done_left_to_right(self): - - EventMesh.publish("return_prev_screen") - def btn8_press(self): EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) @@ -3859,6 +3870,7 @@ class WeatherScreen(Screen): weather_screen = lv.obj() print("weather_screen") weather_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT) + weather_screen.add_event_cb(lambda e:EventMesh.callback_wrapper(self.fun(e)), lv.EVENT.GESTURE, None) weather_img = lv.img(weather_screen) weather_img.set_pos(10, 10) @@ -3982,16 +3994,17 @@ class WeatherScreen(Screen): no_connect_label.set_text("找不到服务器") no_connect_label1.set_text("请联网后重试") - - - # def done_return(self): - # EventMesh.publish("load_screen", {"screen": "toolbox"}) - def btn1_release(self): EventMesh.publish("load_screen", {"screen": "toolbox"}) - def done_left_to_right(self): - EventMesh.publish("return_prev_screen") + def fun(self, e): + code = e.get_code() + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("return_prev_screen") def btn8_press(self): EventMesh.publish("watch_top_show") @@ -4299,7 +4312,9 @@ class CountdownScreen(Screen): countdown_screen = lv.obj() print("countdown_screen") countdown_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT) - + countdown_screen.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun_bt(e,1)), + lv.EVENT.GESTURE, None) + countdown_title = lv.label(countdown_screen) countdown_title.set_pos(0, 20) countdown_title.set_size(LCD_SIZE_W, 20) @@ -4354,6 +4369,7 @@ class CountdownScreen(Screen): countdown_hour_up.set_size(34, 30) countdown_hour_up.set_pos(36, 90) countdown_hour_up.set_src("E:/static/time_up.png") + countdown_hour_up.add_flag(lv.obj.FLAG.CLICKABLE) countdown_hour_up.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT) countdown_hour_up_btn= lv.img(countdown_screen) @@ -4406,6 +4422,7 @@ class CountdownScreen(Screen): countdown_sec_up.set_size(34, 30) countdown_sec_up.set_pos(165, 90) countdown_sec_up.set_src("E:/static/time_up.png") + countdown_sec_up.add_flag(lv.obj.FLAG.CLICKABLE) countdown_sec_up.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT) countdown_sec_up_btn = lv.img(countdown_screen) @@ -4429,6 +4446,7 @@ class CountdownScreen(Screen): countdown_reset_img = lv.img(countdown_screen) countdown_reset_img.set_size(99, 36) countdown_reset_img.set_src("E:/static/stopwatch_reset.png") + countdown_reset_img.add_flag(lv.obj.FLAG.CLICKABLE) countdown_reset_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT) countdown_reset_img.set_pos(10, 230) @@ -4443,6 +4461,7 @@ class CountdownScreen(Screen): countdown_start_img = lv.img(countdown_screen) countdown_start_img.set_size(99, 36) countdown_start_img.set_src("E:/static/stopwatch_play.png") + countdown_start_img.add_flag(lv.obj.FLAG.CLICKABLE) countdown_start_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT) countdown_start_img.set_pos(120, 230) @@ -4467,103 +4486,94 @@ class CountdownScreen(Screen): self.meta = countdown_screen - countdown_sec_up_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.sec_up(e)), + countdown_sec_up_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun_bt(e,2)), lv.EVENT.SHORT_CLICKED, None) - countdown_sec_down_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.sec_down(e)), + countdown_sec_up.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun_bt(e,2)), lv.EVENT.SHORT_CLICKED, None) - countdown_min_up_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.min_up(e)), + countdown_sec_down_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun_bt(e,3)), lv.EVENT.SHORT_CLICKED, None) - countdown_min_down_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.min_down(e)), + countdown_sec_down.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun_bt(e,3)), lv.EVENT.SHORT_CLICKED, None) - countdown_hour_up_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.hour_up(e)), + + countdown_min_up_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun_bt(e,4)), lv.EVENT.SHORT_CLICKED, None) - countdown_hour_down_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.hour_down(e)), + countdown_min_up.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun_bt(e,4)), lv.EVENT.SHORT_CLICKED, None) - countdown_start_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.start(e)), + + countdown_min_down_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun_bt(e,5)), lv.EVENT.SHORT_CLICKED, None) - countdown_reset_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.reset(e)), + countdown_min_down.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun_bt(e,5)), + lv.EVENT.SHORT_CLICKED, None) + + countdown_hour_up_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun_bt(e,6)), + lv.EVENT.SHORT_CLICKED, None) + countdown_hour_up.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun_bt(e,6)), + lv.EVENT.SHORT_CLICKED, None) + + countdown_hour_down_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun_bt(e,7)), + lv.EVENT.SHORT_CLICKED, None) + countdown_hour_down.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun_bt(e,7)), + lv.EVENT.SHORT_CLICKED, None) + + countdown_start_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun_bt(e,8)), + lv.EVENT.SHORT_CLICKED, None) + countdown_start_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun_bt(e,8)), + lv.EVENT.SHORT_CLICKED, None) + + countdown_reset_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun_bt(e,9)), + lv.EVENT.SHORT_CLICKED, None) + countdown_reset_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun_bt(e,9)), lv.EVENT.SHORT_CLICKED, None) - countdown_start_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.start(e)), - lv.EVENT.PRESSING, None) - countdown_reset_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.reset(e)), - lv.EVENT.PRESSING, None) - # countdown_stop_imgbtn.add_event_cb(lambda e: self.stop(e), - # lv.EVENT.CLICKED, None) - # date_tmp = utime.localtime() - # self.time_tmp = utime.mktime(date_tmp) - - #EventMesh.publish("reset_time_countdown") - # if self.g_state == 0: - # self.g_end = 0 - # self.total = 0 - # self.hour = 0 - # self.min = 0 - # self.sec = 0 self.show_value() - - # def sattic_show(self): - # global countdown_screen ,countdown_title,countdown_hour ,countdown_mao ,countdown_mao ,countdown_mao1 ,\ - # countdown_sec ,countdown_hour_up ,countdown_hour_up_btn ,countdown_hour_down ,countdown_hour_down_btn ,\ - # countdown_min_up,countdown_min_up_btn ,countdown_min_down,countdown_min_down_btn,countdown_sec_up ,\ - # countdown_sec_up_btn,countdown_sec_down ,countdown_sec_down_btn ,countdown_reset_img ,countdown_reset_imgbtn ,\ - # countdown_start_img,countdown_start_imgbtn,countdown_stop_img ,countdown_min - - - - def sec_up(self,e): - if self.sec < 59: - self.sec = self.sec + 1 - print("sec_up:",self.sec) - self.show_value() - def sec_down(self,e): - if self.sec > 0: - self.sec = self.sec - 1 - print("sec_down:",self.sec) - self.show_value() - - def min_up(self,e): - if self.min < 59: - self.min = self.min + 1 - print("min_up:",self.min) - self.show_value() - - def min_down(self,e): - if self.min > 0: - self.min = self.min - 1 - print("min_down:",self.min) - self.show_value() - - def hour_up(self,e): - if self.hour < 99: - self.hour = self.hour + 1 - - print("hour_up:",self.hour) - self.show_value() - - def hour_down(self,e): - if self.hour > 0: - self.hour = self.hour - 1 - print("hour_down:",self.hour) - self.show_value() - - def start(self,e): - global countdown_screen ,countdown_title,countdown_hour ,countdown_mao ,countdown_mao ,countdown_mao1 ,\ - countdown_sec ,countdown_hour_up ,countdown_hour_up_btn ,countdown_hour_down ,countdown_hour_down_btn ,\ - countdown_min_up,countdown_min_up_btn ,countdown_min_down,countdown_min_down_btn,countdown_sec_up ,\ - countdown_sec_up_btn,countdown_sec_down ,countdown_sec_down_btn ,countdown_reset_img ,countdown_reset_imgbtn ,\ - countdown_start_img,countdown_start_imgbtn,countdown_stop_img ,countdown_min + + def fun_bt(self,e,msg): code = e.get_code() - if code == lv.EVENT.PRESSING: - #print("PRESSING") - self.is_sliding += 1 - - elif code == lv.EVENT.SHORT_CLICKED: - #utime.sleep_ms(10) - print("1self.is_sliding",self.is_sliding) - if self.is_sliding <= 5 and self.is_sliding != 0:#如果是在滑动中则不需要点击事件 - self.is_sliding =0 + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("return_prev_screen") + elif code == lv.EVENT.SHORT_CLICKED: + if msg == 2: + if self.sec < 59: + self.sec = self.sec + 1 + print("sec_up:",self.sec) + self.show_value() + pass + elif msg == 3: + if self.sec > 0: + self.sec = self.sec - 1 + print("sec_down:",self.sec) + self.show_value() + pass + elif msg == 4: + if self.min < 59: + self.min = self.min + 1 + print("min_up:",self.min) + self.show_value() + pass + elif msg == 5: + if self.min > 0: + self.min = self.min - 1 + print("min_down:",self.min) + self.show_value() + pass + elif msg == 6: + if self.hour < 99: + self.hour = self.hour + 1 + + print("hour_up:",self.hour) + self.show_value() + pass + elif msg == 7: + if self.hour > 0: + self.hour = self.hour - 1 + print("hour_down:",self.hour) + self.show_value() + elif msg == 8: self.total = self.hour*60*60 + self.min*60 + self.sec print("--00:",self.total,self.hour,self.min,self.sec,self.g_state) if self.g_state == 1: @@ -4586,7 +4596,30 @@ class CountdownScreen(Screen): #countdown_hour_up_btn.add_flag(lv.obj.FLAG.HIDDEN) EventMesh.publish("set_countdown_off_state", [0,self.g_state]) - self.is_sliding =0 + pass + elif msg == 9: + self.timer.stop() + self.hour = 0 + self.min = 0 + self.sec = 0 + self.g_state = 0 + self.g_end = 0 + self.total = 0 + EventMesh.publish("set_countdown_off_state", [0,self.g_state]) + EventMesh.publish("reset_time_countdown") + countdown_start_img.clear_flag(lv.obj.FLAG.HIDDEN) + countdown_stop_img.add_flag(lv.obj.FLAG.HIDDEN) + countdown_reset_img.clear_flag(lv.obj.FLAG.HIDDEN) + + countdown_hour_up.clear_flag(lv.obj.FLAG.HIDDEN) + countdown_hour_down.clear_flag(lv.obj.FLAG.HIDDEN) + countdown_min_up.clear_flag(lv.obj.FLAG.HIDDEN) + countdown_min_down.clear_flag(lv.obj.FLAG.HIDDEN) + countdown_sec_up.clear_flag(lv.obj.FLAG.HIDDEN) + countdown_sec_down.clear_flag(lv.obj.FLAG.HIDDEN) + self.show_value() + pass + def stop(self): global countdown_screen ,countdown_title,countdown_hour ,countdown_mao ,countdown_mao ,countdown_mao1 ,\ countdown_sec ,countdown_hour_up ,countdown_hour_up_btn ,countdown_hour_down ,countdown_hour_down_btn ,\ @@ -4594,13 +4627,21 @@ class CountdownScreen(Screen): countdown_sec_up_btn,countdown_sec_down ,countdown_sec_down_btn ,countdown_reset_img ,countdown_reset_imgbtn ,\ countdown_start_img,countdown_start_imgbtn,countdown_stop_img ,countdown_min print("in stop") - + countdown_hour_up.add_flag(lv.obj.FLAG.HIDDEN) + countdown_hour_down.add_flag(lv.obj.FLAG.HIDDEN) + countdown_hour_up.add_flag(lv.obj.FLAG.HIDDEN) + countdown_hour_down.add_flag(lv.obj.FLAG.HIDDEN) + countdown_min_up.add_flag(lv.obj.FLAG.HIDDEN) + countdown_min_down.add_flag(lv.obj.FLAG.HIDDEN) + countdown_sec_up.add_flag(lv.obj.FLAG.HIDDEN) + countdown_sec_down.add_flag(lv.obj.FLAG.HIDDEN) + countdown_start_img.clear_flag(lv.obj.FLAG.HIDDEN) + countdown_stop_img.add_flag(lv.obj.FLAG.HIDDEN) + countdown_reset_img.clear_flag(lv.obj.FLAG.HIDDEN) self.g_end = 0 self.timer.stop() - self.show_value() - # EventMesh.publish("load_screen", {"screen": "countdown"}) - + def fun(self,e): if self.g_state == 1: date_tmp = utime.localtime() @@ -4618,19 +4659,20 @@ class CountdownScreen(Screen): # print("self.total:{} self.time_tmp:{} self.timeSecond:{} test_hour:{} test_min:{} test_sec:{}".format(self.total,self.time_tmp,self.timeSecond,test_hour,test_min,test_sec)) - self.show_value() + # print("Close self.timeSecond:22") #EventMesh.publish("set_countdown_all_time", [self.total,self.timeSecond]) if self.total <= 0: + self.timer.stop() + EventMesh.publish("load_screen", {"screen": "countdown_end"}) self.g_state = 0 self.g_end = 1 self.hour = 0 self.min = 0 self.sec = 0 - #EventMesh.publish("set_countdown_off_state", [0,self.g_state]) - self.timer.stop() + else: + self.show_value() - EventMesh.publish("load_screen", {"screen": "countdown_end"}) # self.total = self.total - 1 @@ -4654,42 +4696,36 @@ class CountdownScreen(Screen): # self.g_state = msg_tmp[1] # EventMesh.publish("set_countdown_off_state", [0,self.g_state]) def close_count_show_info(self, event, msg): - self.reset(0) + self.reset() - def reset(self,e): + def reset(self): global countdown_screen ,countdown_title,countdown_hour ,countdown_mao ,countdown_mao ,countdown_mao1 ,\ countdown_sec ,countdown_hour_up ,countdown_hour_up_btn ,countdown_hour_down ,countdown_hour_down_btn ,\ countdown_min_up,countdown_min_up_btn ,countdown_min_down,countdown_min_down_btn,countdown_sec_up ,\ countdown_sec_up_btn,countdown_sec_down ,countdown_sec_down_btn ,countdown_reset_img ,countdown_reset_imgbtn ,\ countdown_start_img,countdown_start_imgbtn,countdown_stop_img ,countdown_min - code = lv.EVENT.SHORT_CLICKED - if type(e) != int: - code = e.get_code() - - - #print("code!!!!!!!!",code,msg) - if code == lv.EVENT.PRESSING: - #print("PRESSING") - self.is_sliding += 1 + # print("in reset") + self.timer.stop() + self.hour = 0 + self.min = 0 + self.sec = 0 + self.g_state = 0 + self.g_end = 0 + self.total = 0 + EventMesh.publish("set_countdown_off_state", [0,self.g_state]) + EventMesh.publish("reset_time_countdown") + countdown_start_img.clear_flag(lv.obj.FLAG.HIDDEN) + countdown_stop_img.add_flag(lv.obj.FLAG.HIDDEN) + countdown_reset_img.clear_flag(lv.obj.FLAG.HIDDEN) + + countdown_hour_up.clear_flag(lv.obj.FLAG.HIDDEN) + countdown_hour_down.clear_flag(lv.obj.FLAG.HIDDEN) + countdown_min_up.clear_flag(lv.obj.FLAG.HIDDEN) + countdown_min_down.clear_flag(lv.obj.FLAG.HIDDEN) + countdown_sec_up.clear_flag(lv.obj.FLAG.HIDDEN) + countdown_sec_down.clear_flag(lv.obj.FLAG.HIDDEN) + self.show_value() - elif code == lv.EVENT.SHORT_CLICKED: - #utime.sleep_ms(10) - print("1self.is_sliding",self.is_sliding) - if self.is_sliding <= 5 and self.is_sliding != 0:#如果是在滑动中则不需要点击事件 - self.is_sliding =0 - # print("in reset") - self.timer.stop() - self.hour = 0 - self.min = 0 - self.sec = 0 - self.g_state = 0 - self.g_end = 0 - self.total = 0 - #EventMesh.publish("set_countdown_off_state", [0,self.g_state]) - #EventMesh.publish("reset_time_countdown") - self.show_value() - - self.is_sliding =0 @@ -4826,8 +4862,8 @@ class CountdownScreen(Screen): self.timer.stop() EventMesh.publish("load_screen", {"screen": "toolbox"}) - def done_left_to_right(self): - EventMesh.publish("return_prev_screen") + # def done_left_to_right(self): + # EventMesh.publish("return_prev_screen") def btn8_press(self): if self.g_state == 0: @@ -4926,6 +4962,7 @@ class CountdownEndScreen(Screen): def btn8_press(self): self.stop_FIND() + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) # -------------------------------------------stopwatch screen---------------------------------------------------------- @@ -4959,12 +4996,13 @@ class StopwatchScreen(Screen): def initialization(self): global stopwatch_screen,stopwatch_title,stopwatch_label_min,stopwatch_mao,stopwatch_label_sec ,\ - stopwatch_mao1 ,stopwatch_label_ms,stopwatch_reset_img ,topwatch_reset_imgbtn ,stopwatch_start_img ,\ + stopwatch_mao1 ,stopwatch_label_ms,stopwatch_reset_img ,stopwatch_reset_imgbtn ,stopwatch_start_img ,\ stopwatch_start_imgbtn, stopwatch_stop_img if stopwatch_screen == None : stopwatch_screen = lv.obj() print("stopwatch_screen") stopwatch_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT) + stopwatch_screen.add_event_cb(lambda e:EventMesh.callback_wrapper(self.fun_btn(e,1)), lv.EVENT.GESTURE, None) stopwatch_title = lv.label(stopwatch_screen) stopwatch_title.set_pos(0, 20) @@ -5050,10 +5088,10 @@ class StopwatchScreen(Screen): stopwatch_stop_img.add_style(style_img, lv.PART.MAIN | lv.STATE.DEFAULT) stopwatch_stop_img.set_pos(120, 210) stopwatch_stop_img.add_flag(lv.obj.FLAG.HIDDEN) - stopwatch_start_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.start(e)), + stopwatch_start_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun_btn(e,2)), lv.EVENT.SHORT_CLICKED, None) - stopwatch_reset_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.reset(e)), + stopwatch_reset_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun_btn(e,3)), lv.EVENT.SHORT_CLICKED, None) self.meta = stopwatch_screen @@ -5074,36 +5112,9 @@ class StopwatchScreen(Screen): self.timer.start(100,1,self._fun) - def start(self, e): - global stopwatch_screen,stopwatch_title,stopwatch_label_min,stopwatch_mao,stopwatch_label_sec ,\ - stopwatch_mao1 ,stopwatch_label_ms,stopwatch_reset_img ,topwatch_reset_imgbtn ,stopwatch_start_img ,\ - stopwatch_start_imgbtn, stopwatch_stop_img - print("stopwatch start:{}".format(self.s_state)) - #self.timer.start(100, 1, self._fun) - - if self.s_state == 1: - self.s_state = 2 - self.paused() - elif self.s_state == 2: - self.s_state = 1 - if self.s_state != 2: - self.s_state = 1 - if self.total_time >= 99*60: - self.ms_value = 0 - self.sec_value = 0 - self.min_value = 0 - self.total_time = 0 - self.show_value() - self.timer.start(100,1,self._fun) - stopwatch_stop_img.clear_flag(lv.obj.FLAG.HIDDEN) - stopwatch_start_img.add_flag(lv.obj.FLAG.HIDDEN) - # print("ms_value start:{} {} {}".format(self.ms_value,self.sec_value,self.min_value)) - - - def paused(self): global stopwatch_screen,stopwatch_title,stopwatch_label_min,stopwatch_mao,stopwatch_label_sec ,\ - stopwatch_mao1 ,stopwatch_label_ms,stopwatch_reset_img ,topwatch_reset_imgbtn ,stopwatch_start_img ,\ + stopwatch_mao1 ,stopwatch_label_ms,stopwatch_reset_img ,stopwatch_reset_imgbtn ,stopwatch_start_img ,\ stopwatch_start_imgbtn, stopwatch_stop_img print("stopwatch pause") stopwatch_start_img.clear_flag(lv.obj.FLAG.HIDDEN) @@ -5113,7 +5124,7 @@ class StopwatchScreen(Screen): def reset(self,e): global stopwatch_screen,stopwatch_title,stopwatch_label_min,stopwatch_mao,stopwatch_label_sec ,\ - stopwatch_mao1 ,stopwatch_label_ms,stopwatch_reset_img ,topwatch_reset_imgbtn ,stopwatch_start_img ,\ + stopwatch_mao1 ,stopwatch_label_ms,stopwatch_reset_img ,stopwatch_reset_imgbtn ,stopwatch_start_img ,\ stopwatch_start_imgbtn, stopwatch_stop_img print("stopwatch reset") @@ -5127,25 +5138,80 @@ class StopwatchScreen(Screen): self.timer.stop() self.show_value() + def fun_btn(self, e,msg): + code = e.get_code() + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + if self.s_state == 0: + self.timer.stop() + EventMesh.publish("return_prev_screen") + elif code == lv.EVENT.SHORT_CLICKED: + if msg == 2: + global stopwatch_screen,stopwatch_title,stopwatch_label_min,stopwatch_mao,stopwatch_label_sec ,\ + stopwatch_mao1 ,stopwatch_label_ms,stopwatch_reset_img ,stopwatch_reset_imgbtn ,stopwatch_start_img ,\ + stopwatch_start_imgbtn, stopwatch_stop_img + print("stopwatch start:{}".format(self.s_state)) + #self.timer.start(100, 1, self._fun) + + if self.s_state == 1: + self.s_state = 2 + self.paused() + elif self.s_state == 2: + self.s_state = 1 + if self.s_state != 2: + self.s_state = 1 + if self.total_time >= 99*60: + self.ms_value = 0 + self.sec_value = 0 + self.min_value = 0 + self.total_time = 0 + self.show_value() + self.timer.start(100,1,self._fun) + stopwatch_stop_img.clear_flag(lv.obj.FLAG.HIDDEN) + stopwatch_start_img.add_flag(lv.obj.FLAG.HIDDEN) + # print("ms_value start:{} {} {}".format(self.ms_value,self.sec_value,self.min_value)) + pass + elif msg == 3: + global stopwatch_screen,stopwatch_title,stopwatch_label_min,stopwatch_mao,stopwatch_label_sec ,\ + stopwatch_mao1 ,stopwatch_label_ms,stopwatch_reset_img ,stopwatch_reset_imgbtn ,stopwatch_start_img ,\ + stopwatch_start_imgbtn, stopwatch_stop_img + print("stopwatch reset") + self.timer.stop() + self.sec_value = 0 + self.min_value = 0 + self.ms_value = 0 + self.s_state = 0 + self.total_time = 0 + stopwatch_start_img.clear_flag(lv.obj.FLAG.HIDDEN) + stopwatch_stop_img.add_flag(lv.obj.FLAG.HIDDEN) + + self.show_value() + pass + + def _fun(self,e): - self.ms_value += 1 - if self.ms_value > 9: - self.ms_value = 0 - self.sec_value += 1 - self.total_time+=1 - if self.sec_value > 59: - self.sec_value = 0 - if self.total_time > 99*60: - self.total_time = 99*60 - self.timer.stop() - stopwatch_start_img.clear_flag(lv.obj.FLAG.HIDDEN) - stopwatch_stop_img.add_flag(lv.obj.FLAG.HIDDEN) + if self.s_state != 0: + self.ms_value += 1 + if self.ms_value > 9: + self.ms_value = 0 + self.sec_value += 1 + self.total_time+=1 + if self.sec_value > 59: + self.sec_value = 0 + if self.total_time > 99*60: + self.total_time = 99*60 + self.timer.stop() + stopwatch_start_img.clear_flag(lv.obj.FLAG.HIDDEN) + stopwatch_stop_img.add_flag(lv.obj.FLAG.HIDDEN) - self.show_value() + self.show_value() def show_value(self): global stopwatch_screen,stopwatch_title,stopwatch_label_min,stopwatch_mao,stopwatch_label_sec ,\ - stopwatch_mao1 ,stopwatch_label_ms,stopwatch_reset_img ,topwatch_reset_imgbtn ,stopwatch_start_img ,\ + stopwatch_mao1 ,stopwatch_label_ms,stopwatch_reset_img ,stopwatch_reset_imgbtn ,stopwatch_start_img ,\ stopwatch_start_imgbtn, stopwatch_stop_img if self.total_time >= 99*60: self.total_time = 99*60 @@ -5210,11 +5276,11 @@ class StopwatchScreen(Screen): self.timer.stop() EventMesh.publish("load_screen", {"screen": "toolbox"}) - def done_left_to_right(self): - if self.s_state == 0: - self.timer.stop() + # def done_left_to_right(self): + # if self.s_state == 0: + # self.timer.stop() - EventMesh.publish("return_prev_screen") + # EventMesh.publish("return_prev_screen") def btn8_press(self): if self.s_state == 0: @@ -5354,6 +5420,7 @@ class LowPowerScreen(Screen): EventMesh.publish("return_prev_screen") def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) LowOnePower_screen = None @@ -5431,6 +5498,7 @@ class LowOnePowerScreen(Screen): #0%的电池电量 EventMesh.publish("return_prev_screen") def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) @@ -6247,6 +6315,7 @@ class sosrecvScreen(Screen):#设备接收平台发送的 def btn8_press(self): EventMesh.publish("set_UI_high_priority",0) + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) #from usr.ui_WatchFaceScreen import WatchFaceScreen diff --git a/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/ui_health.py b/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/ui_health.py index 1eca55e3..47efa6e1 100644 --- a/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/ui_health.py +++ b/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/ui_health.py @@ -244,7 +244,9 @@ class TemperatureScreen(Screen): temperature_screen = lv.obj() print("temp_screen") temperature_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT) - + temperature_screen.add_event_cb(lambda e: EventMesh.callback_wrapper(self.restart_up(e,1)), + lv.EVENT.GESTURE, None) + temperature_label = lv.label(temperature_screen) temperature_label.set_pos(0, 10) temperature_label.set_size(LCD_SIZE_W, 40) @@ -346,10 +348,8 @@ class TemperatureScreen(Screen): self.meta = temperature_screen - temp_reset_btn_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.restart_up(e)), + temp_reset_btn_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.restart_up(e,2)), lv.EVENT.SHORT_CLICKED, None) - temp_reset_btn_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.restart_up(e)), - lv.EVENT.PRESSING, None) temperature_bpm_label.set_text("- -℃") temperature_start_label.set_text("正在测量中.") @@ -358,42 +358,47 @@ class TemperatureScreen(Screen): self.is_sliding =0 self.start_init() - def restart_up(self,e): + def restart_up(self,e,msg): global temperature_done_label,temperature_keep_label,temperature_bpm_label,temperature_start_label,temp_reset_btn_img code = e.get_code() - - if code == lv.EVENT.PRESSING: - #print("PRESSING") - self.is_sliding += 1 + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("return_prev_screen") elif code == lv.EVENT.SHORT_CLICKED: - #utime.sleep_ms(10) - print("1self.is_sliding",self.is_sliding) - if self.is_sliding <= 5 and self.is_sliding != 0:#如果是在滑动中则不需要点击事件 - self.is_sliding =0 - temperature_bpm_label.set_text("- -℃") + if msg == 2: + if temperature_bpm_label != None: + temperature_bpm_label.set_text("- -℃") # temperature_keep_label.set_text("未出值") - temp_reset_btn_img.add_flag(lv.obj.FLAG.HIDDEN) + if temp_reset_btn_img != None: + temp_reset_btn_img.add_flag(lv.obj.FLAG.HIDDEN) self.point = 0 - temperature_bpm_label.set_text("- -℃") - temperature_start_label.set_text("正在测量中.") + if temperature_bpm_label != None: + temperature_bpm_label.set_text("- -℃") + if temperature_start_label != None: + temperature_start_label.set_text("正在测量中.") EventMesh.publish("set_temp_state",1) EventMesh.publish(constants.EVENT.START_TEMP) EventMesh.publish("show_history_temp_data") self.temp_data_old = 0 self.timer.start(1*500, 1, self.start_measure) - - self.is_sliding =0 def start_init(self): - temperature_bpm_label.set_text("- -℃") + if temperature_bpm_label != None: + temperature_bpm_label.set_text("- -℃") # temperature_keep_label.set_text("未出值") - temp_reset_btn_img.add_flag(lv.obj.FLAG.HIDDEN) + if temp_reset_btn_img != None: + temp_reset_btn_img.add_flag(lv.obj.FLAG.HIDDEN) self.point = 0 - temperature_bpm_label.set_text("- -℃") - temperature_start_label.set_text("正在测量中.") + if temperature_bpm_label != None: + temperature_bpm_label.set_text("- -℃") + if temperature_start_label != None: + temperature_start_label.set_text("正在测量中.") EventMesh.publish("set_temp_state",1) EventMesh.publish(constants.EVENT.START_TEMP) EventMesh.publish("show_history_temp_data") @@ -731,7 +736,9 @@ class Spo2Screen(Screen): spo2_screen = lv.obj() print("spo2_screen") spo2_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT) - + spo2_screen.add_event_cb(lambda e: EventMesh.callback_wrapper(self.restart_up(e,1)), + lv.EVENT.GESTURE, None) + spo2_label = lv.label(spo2_screen) spo2_label.set_pos(0, 10) spo2_label.set_size(LCD_SIZE_W, 40) @@ -816,10 +823,8 @@ class Spo2Screen(Screen): self.meta = spo2_screen - spo2_reset_btn_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.restart_up(e)), + spo2_reset_btn_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.restart_up(e,2)), lv.EVENT.SHORT_CLICKED, None) - spo2_reset_btn_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.restart_up(e)), - lv.EVENT.PRESSING, None) def post_processor_after_initialization(self): self.point = 0 @@ -828,32 +833,31 @@ class Spo2Screen(Screen): EventMesh.publish("show_history_spo2_data") self.start_init() - def restart_up(self,e): + def restart_up(self,e,msg): global spo2_value_label,heartrate_bpm_label,spo2_start_label,spo2_reset_btn_img - code = e.get_code() - #print("code!!!!!!!!",code,msg) - if code == lv.EVENT.PRESSING: - #print("PRESSING") - self.is_sliding += 1 + code = e.get_code() + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("return_prev_screen") elif code == lv.EVENT.SHORT_CLICKED: - #utime.sleep_ms(10) - print("1self.is_sliding",self.is_sliding) - if self.is_sliding <= 5 and self.is_sliding != 0:#如果是在滑动中则不需要点击事件 - self.is_sliding = 0 + if msg == 2: self.point = 0 self.timer.start(1*500, 1, self.start_measure) if spo2_reset_btn_img != None: spo2_reset_btn_img.add_flag(lv.obj.FLAG.HIDDEN) - - spo2_value_label.set_text("- -%") - spo2_start_label.set_text("正在测量中.") + if spo2_value_label != None: + spo2_value_label.set_text("- -%") + if spo2_start_label != None: + spo2_start_label.set_text("正在测量中.") EventMesh.publish("set_spo2_state",1)#2代表后台进入血氧测试 EventMesh.publish(constants.EVENT.START_BLOOD_OXYGEN) - self.is_sliding =0 def start_init(self): self.point = 0 @@ -1086,7 +1090,9 @@ class HeartrateScreen(Screen): heartrate_screen = lv.obj() print("heartrate_screen") heartrate_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT) - + heartrate_screen.add_event_cb(lambda e: EventMesh.callback_wrapper(self.restart_up(e,1)), + lv.EVENT.GESTURE, None) + heartrate_label = lv.label(heartrate_screen) heartrate_label.set_pos(0, 10) heartrate_label.set_size(LCD_SIZE_W, 40) @@ -1177,10 +1183,8 @@ class HeartrateScreen(Screen): heartrate_done_label.set_style_text_color(lv.color_make(0xff, 0xff, 0xff), lv.STATE.DEFAULT) self.meta = heartrate_screen - heartrate_reset_btn_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.restart_up(e)), + heartrate_reset_btn_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.restart_up(e,2)), lv.EVENT.SHORT_CLICKED, None) - heartrate_reset_btn_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.restart_up(e)), - lv.EVENT.PRESSING, None) heartrate_done_label.set_text(" ") heartrate_bpm_label.set_text("-- bpm") @@ -1197,35 +1201,36 @@ class HeartrateScreen(Screen): # self.show_history_data() self.start_init() - def restart_up(self,e): + def restart_up(self,e,msg): global heartrate_done_label,heartrate_bpm_label,heartrate_start_label,heartrate_reset_btn_img - code = e.get_code() - if code == lv.EVENT.PRESSING: - #print("PRESSING") - self.is_sliding += 1 + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("return_prev_screen") elif code == lv.EVENT.SHORT_CLICKED: - #utime.sleep_ms(10) - print("1self.is_sliding",self.is_sliding) - if self.is_sliding <= 5 and self.is_sliding != 0:#如果是在滑动中则不需要点击事件 - self.is_sliding =0 + if msg == 2: self.point = 0 + self.heart_value = 0 self.timer.start(1*500, 1, self.start_measure) - heartrate_bpm_label.set_text("-- bpm") + if heartrate_bpm_label != None: + heartrate_bpm_label.set_text("-- bpm") if heartrate_reset_btn_img != None: heartrate_reset_btn_img.add_flag(lv.obj.FLAG.HIDDEN) - - self.heart_value = 0 - - heartrate_done_label.set_text(" ") - heartrate_bpm_label.set_text("-- bpm") - heartrate_start_label.set_text("正在测量中.") + + if heartrate_done_label != None: + heartrate_done_label.set_text(" ") + if heartrate_bpm_label != None: + heartrate_bpm_label.set_text("-- bpm") + if heartrate_start_label != None: + heartrate_start_label.set_text("正在测量中.") EventMesh.publish("set_hr_state",1)#1代表手动进入测试界面 EventMesh.publish(constants.EVENT.START_HEART) - - self.is_sliding =0 + def start_init(self): self.point = 0 self.timer.start(1*500, 1, self.start_measure) @@ -1262,19 +1267,19 @@ class HeartrateScreen(Screen): if value <= 60:#18 36.6 -18 = 18 line_value = int((value-30)*0.6)# elif value <= 90: - line_value = int((value-60)*0.6)+18#127+15+1 + line_value = int((value-60)*0.6)+18*1#127+15+1 elif value < 120: - line_value = int((value-90)*0.55)+18+18 + line_value = int((value-90)*0.55)+18*2 elif value == 120: - line_value = int((value-90)*0.6)+18+18 + line_value = int((value-90)*0.6)+18*2 elif value < 150: - line_value = int((value-120)*0.55)+18+18+18 + line_value = int((value-120)*0.55)+18*3 elif value == 150: - line_value = int((value-120)*0.6)+18+18+18 + line_value = int((value-120)*0.6)+18*3 elif value < 180: - line_value = int((value-150)*0.56)+18+18+18+18 + line_value = int((value-150)*0.56)+18*4 elif value == 180: - line_value = int((value-150)*0.6)+18+18+18+18 + line_value = int((value-150)*0.6)+18*4 #print("hr hist",line_value) hr_line_points = [{"x":0,"y":0},{"x":0,"y":line_value}] if i == 0: @@ -1379,8 +1384,8 @@ class HeartrateScreen(Screen): print("stop debug10") EventMesh.publish(constants.EVENT.STOP_HEART) - def done_left_to_right(self): - EventMesh.publish("return_prev_screen") + # def done_left_to_right(self): + # EventMesh.publish("return_prev_screen") def btn8_press(self): EventMesh.publish("watch_top_show") @@ -1459,7 +1464,9 @@ class bloodpressureScreen(Screen): blood_pressure_screen = lv.obj() print("blood_pressure_screen") blood_pressure_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT) - + blood_pressure_screen.add_event_cb(lambda e: EventMesh.callback_wrapper(self.restart_up(e,1)), + lv.EVENT.GESTURE, None) + blood_pressure_label = lv.label(blood_pressure_screen) blood_pressure_label.set_pos(0, 10) blood_pressure_label.set_size(LCD_SIZE_W, 40) @@ -1608,10 +1615,8 @@ class bloodpressureScreen(Screen): blood_pressure_done_label.set_style_text_color(lv.color_make(0xff, 0xff, 0xff), lv.STATE.DEFAULT) self.meta = blood_pressure_screen - blood_pressure_reset_btn_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.restart_up(e)), + blood_pressure_reset_btn_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.restart_up(e,2)), lv.EVENT.SHORT_CLICKED, None) - blood_pressure_reset_btn_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.restart_up(e)), - lv.EVENT.PRESSING, None) blood_pressure_done_label.set_text(" ") blood_pressure_bpm_label.set_text("--/--") @@ -2125,19 +2130,18 @@ class bloodpressureScreen(Screen): - def restart_up(self,e): + def restart_up(self,e,msg): global blood_pressure_done_label,blood_pressure_bpm_label,blood_pressure_start_label,blood_pressure_reset_btn_img - code = e.get_code() - if code == lv.EVENT.PRESSING: - #print("PRESSING") - self.is_sliding += 1 + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("return_prev_screen") elif code == lv.EVENT.SHORT_CLICKED: - #utime.sleep_ms(10) - print("1self.is_sliding",self.is_sliding) - if self.is_sliding <= 5 and self.is_sliding != 0:#如果是在滑动中则不需要点击事件 - self.is_sliding =0 + if msg == 2: self.point = 0 self.blood_Maxvalue = 0 self.blood_Minvalue = 0 @@ -2149,14 +2153,16 @@ class bloodpressureScreen(Screen): self.heart_value = 0 - blood_pressure_done_label.set_text(" ") - blood_pressure_bpm_label.set_text("--/--") - blood_pressure_start_label.set_text("正在测量中.") + if blood_pressure_done_label != None: + blood_pressure_done_label.set_text(" ") + if blood_pressure_bpm_label != None: + blood_pressure_bpm_label.set_text("--/--") + if blood_pressure_start_label != None: + blood_pressure_start_label.set_text("正在测量中.") EventMesh.publish("set_bp_state",1)#3代表单次测量 EventMesh.publish(constants.EVENT.START_HEART) - - self.is_sliding =0 + def start_init(self): self.point = 0 self.blood_Maxvalue = 0 @@ -2164,13 +2170,17 @@ class bloodpressureScreen(Screen): self.count_blood = 0 self.count_blood = 0 self.timer.start(1*500, 1, self.start_measure) - blood_pressure_bpm_label.set_text("--/--") + if blood_pressure_bpm_label != None: + blood_pressure_bpm_label.set_text("--/--") if blood_pressure_reset_btn_img != None: blood_pressure_reset_btn_img.add_flag(lv.obj.FLAG.HIDDEN) self.heart_value = 0 - blood_pressure_done_label.set_text(" ") - blood_pressure_bpm_label.set_text("--/--") - blood_pressure_start_label.set_text("正在测量中.") + if blood_pressure_done_label != None: + blood_pressure_done_label.set_text(" ") + if blood_pressure_bpm_label != None: + blood_pressure_bpm_label.set_text("--/--") + if blood_pressure_start_label != None: + blood_pressure_start_label.set_text("正在测量中.") EventMesh.publish("set_bp_state",1)#3代表单次测量 EventMesh.publish(constants.EVENT.START_HEART) @@ -2210,19 +2220,19 @@ class bloodpressureScreen(Screen): if valueMax <= 60:#18 36.6 -18 = 18 line_Maxvalue = int((valueMax-30)*0.6)# elif valueMax <= 90: - line_Maxvalue = int((valueMax-60)*0.6)+18#127+15+1 + line_Maxvalue = int((valueMax-60)*0.6)+18*1#127+15+1 elif valueMax < 120: - line_Maxvalue = int((valueMax-90)*0.55)+18+18 + line_Maxvalue = int((valueMax-90)*0.55)+18*2 elif valueMax == 120: - line_Maxvalue = int((valueMax-90)*0.6)+18+18 + line_Maxvalue = int((valueMax-90)*0.6)+18*2 elif valueMax < 150: - line_Maxvalue = int((valueMax-120)*0.55)+18+18+18 + line_Maxvalue = int((valueMax-120)*0.55)+18*3 elif valueMax == 150: - line_Maxvalue = int((valueMax-120)*0.6)+18+18+18 + line_Maxvalue = int((valueMax-120)*0.6)+18*3 elif valueMax < 180: - line_Maxvalue = int((valueMax-150)*0.56)+18+18+18+18 + line_Maxvalue = int((valueMax-150)*0.56)+18*4 elif valueMax == 180: - line_Maxvalue = int((valueMax-150)*0.6)+18+18+18+18 + line_Maxvalue = int((valueMax-150)*0.6)+18*4 if line_Maxvalue >= 100: line_Maxvalue = 100 @@ -2239,19 +2249,19 @@ class bloodpressureScreen(Screen): if valueMin <= 60:#18 36.6 -18 = 18 line_Minvalue = int((valueMin-30)*0.6)# elif valueMin <= 90: - line_Minvalue = int((valueMin-60)*0.6)+18#127+15+1 + line_Minvalue = int((valueMin-60)*0.6)+18*1#127+15+1 elif valueMin < 120: - line_Minvalue = int((valueMin-90)*0.55)+18+18 + line_Minvalue = int((valueMin-90)*0.55)+18*2 elif valueMin == 120: - line_Minvalue = int((valueMin-90)*0.6)+18+18 + line_Minvalue = int((valueMin-90)*0.6)+18*2 elif valueMin < 150: - line_Minvalue = int((valueMin-120)*0.55)+18+18+18 + line_Minvalue = int((valueMin-120)*0.55)+18*3 elif valueMin == 150: - line_Minvalue = int((valueMin-120)*0.6)+18+18+18 + line_Minvalue = int((valueMin-120)*0.6)+18*3 elif valueMin < 180: - line_Minvalue = int((valueMin-150)*0.56)+18+18+18+18 + line_Minvalue = int((valueMin-150)*0.56)+18*4 elif valueMin == 180: - line_Minvalue = int((valueMin-150)*0.6)+18+18+18+18 + line_Minvalue = int((valueMin-150)*0.6)+18*4 #print("hr hist",line_value) blood_pressure_lineh_points = [{"x":0,"y":0},{"x":0,"y":line_Maxvalue}] blood_pressure_linel_points = [{"x":0,"y":0},{"x":0,"y":line_Minvalue}] diff --git a/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/ui_setting.py b/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/ui_setting.py index 9d69bf42..6267a779 100644 --- a/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/ui_setting.py +++ b/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/ui_setting.py @@ -293,21 +293,9 @@ class SettingScreen(Screen): if code == lv.EVENT.GESTURE: if dir == lv.DIR.RIGHT: EventMesh.publish("load_screen", {"screen": "main_menu"}) - - elif code == lv.EVENT.PRESSING: - print("PRESSING") - self.is_sliding += 1 - elif code == lv.EVENT.SHORT_CLICKED: - EventMesh.publish("load_screen", {"screen": "{}".format(msg)}) - #utime.sleep_ms(10) - # print("1self.is_sliding",self.is_sliding) - # if self.is_sliding <= 5 and self.is_sliding != 0:#如果是在滑动中则不需要点击事件 - # self.is_sliding = 0 - # if msg != "void": - # EventMesh.publish("load_screen", {"screen": "{}".format(msg)}) - - # self.is_sliding =0 + if msg != "void": + EventMesh.publish("load_screen", {"screen": "{}".format(msg)}) @@ -954,45 +942,30 @@ class RestoreScreen(Screen): self.is_sliding = 0 super().__init__() self.meta = restore_screen - restore_confirm.add_event_cb(lambda e: EventMesh.callback_wrapper(self.confirm(e)),lv.EVENT.SHORT_CLICKED, None) - restore_confirm.add_event_cb(lambda e: EventMesh.callback_wrapper(self.confirm(e)),lv.EVENT.PRESSING, None) - restore_cancel.add_event_cb(lambda e: EventMesh.callback_wrapper(self.concel(e)),lv.EVENT.SHORT_CLICKED, None) - restore_cancel.add_event_cb(lambda e: EventMesh.callback_wrapper(self.concel(e)),lv.EVENT.PRESSING, None) + restore_screen.add_event_cb(lambda e:EventMesh.callback_wrapper(self.fun(e,1)), lv.EVENT.GESTURE, None) + + restore_confirm.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun(e,2)),lv.EVENT.SHORT_CLICKED, None) + restore_cancel.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun(e,3)),lv.EVENT.SHORT_CLICKED, None) + def initialization(self): self.is_sliding = 0 - - def confirm(self, e): + + def fun(self, e,msg): code = e.get_code() - if code == lv.EVENT.PRESSING: - #print("PRESSING") - self.is_sliding += 1 - - elif code == lv.EVENT.SHORT_CLICKED: - #utime.sleep_ms(10) - print("1self.is_sliding",self.is_sliding) - if self.is_sliding <= 5 and self.is_sliding != 0:#如果是在滑动中则不需要点击事件 - self.is_sliding =0 + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("load_screen", {"screen": "setting"}) + elif code == lv.EVENT.SHORT_CLICKED: + if msg == 2: EventMesh.publish("load_screen", {"screen": "restore_confirm"}) - self.is_sliding =0 - - def concel(self, e): - code = e.get_code() - if code == lv.EVENT.PRESSING: - #print("PRESSING") - self.is_sliding += 1 - - elif code == lv.EVENT.SHORT_CLICKED: - #utime.sleep_ms(10) - print("1self.is_sliding",self.is_sliding) - if self.is_sliding <= 5 and self.is_sliding != 0:#如果是在滑动中则不需要点击事件 - self.is_sliding =0 + pass + elif msg == 3: EventMesh.publish("return_prev_screen") - self.is_sliding =0 - - def done_left_to_right(self): - - EventMesh.publish("return_prev_screen") + pass def btn8_press(self): EventMesh.publish("watch_top_show") @@ -1028,6 +1001,7 @@ class VersionScreen(Screen): def __init__(self): super().__init__() self.meta = version_screen + version_screen.add_event_cb(lambda e:EventMesh.callback_wrapper(self.fun(e)), lv.EVENT.GESTURE, None) self.btn_count = 0 def initialization(self): @@ -1036,7 +1010,16 @@ class VersionScreen(Screen): def Close(self): self.btn_count = 0 - + + def fun(self, e): + code = e.get_code() + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("load_screen", {"screen": "setting"}) + def done_click(self): self.btn_count += 1 if self.btn_count >= 5 : @@ -1054,9 +1037,6 @@ class VersionScreen(Screen): def btn1_release(self): EventMesh.publish("load_screen", {"screen": "setting"}) - - def done_left_to_right(self): - EventMesh.publish("return_prev_screen") def btn8_press(self): EventMesh.publish("watch_top_show") @@ -1116,45 +1096,35 @@ class PoweroffScreen(Screen): super().__init__() self.is_sliding = 0 self.meta = poweroff_screen - poweroff_confirm_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.confirm(e)),lv.EVENT.SHORT_CLICKED, None) - poweroff_return.add_event_cb(lambda e: EventMesh.callback_wrapper(self.concel(e)),lv.EVENT.SHORT_CLICKED, None) - poweroff_confirm_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.confirm(e)),lv.EVENT.PRESSING, None) - poweroff_return.add_event_cb(lambda e: EventMesh.callback_wrapper(self.concel(e)),lv.EVENT.PRESSING, None) + poweroff_screen.add_event_cb(lambda e:EventMesh.callback_wrapper(self.fun(e,1)), lv.EVENT.GESTURE, None) + poweroff_confirm_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun(e,2)),lv.EVENT.SHORT_CLICKED, None) + poweroff_return.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun(e,3)),lv.EVENT.SHORT_CLICKED, None) def initialization(self): self.is_sliding = 0 pass - def done_return(self): - EventMesh.publish("load_screen", {"screen": "setting"}) - - def confirm(self, e): + def fun(self, e,msg): code = e.get_code() - if code == lv.EVENT.PRESSING: - #print("PRESSING") - self.is_sliding += 1 - - elif code == lv.EVENT.SHORT_CLICKED: - #utime.sleep_ms(10) - print("1self.is_sliding",self.is_sliding) - if self.is_sliding <= 5 and self.is_sliding != 0:#如果是在滑动中则不需要点击事件 - self.is_sliding =0 + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("load_screen", {"screen": "setting"}) + elif code == lv.EVENT.SHORT_CLICKED: + if msg == 2: EventMesh.publish("load_screen", {"screen": "poweroff_comfirm"}) - self.is_sliding =0 - - #EventMesh.publish("load_screen", {"screen": "no_sim_power_screen"}) - - - - def concel(self, e): - EventMesh.publish("return_prev_screen") - # EventMesh.publish("load_screen", {"screen": "setting"}) + pass + elif msg == 3: + EventMesh.publish("load_screen", {"screen": "setting"}) + pass + def done_return(self): + EventMesh.publish("load_screen", {"screen": "setting"}) def btn1_release(self): EventMesh.publish("load_screen", {"screen": "setting"}) - def done_left_to_right(self): - EventMesh.publish("return_prev_screen") def btn8_press(self): EventMesh.publish("watch_top_show") @@ -1445,25 +1415,16 @@ class ThemeswitchScreen(Screen):#主题风格选择 def __init__(self): super().__init__() self.meta = menustyle_screen - self.is_sliding1 = 0 - self.is_sliding2 = 0 + menustyle_screen.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun(e,1)), + lv.EVENT.GESTURE, None) - - menustyle_img1_bg_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun1(e)), + menustyle_img1_bg_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun(e,2)), lv.EVENT.SHORT_CLICKED, None) - - menustyle_img1_bg_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun1(e)), - lv.EVENT.PRESSING, None) - menustyle_img2_bg_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun2(e)), + menustyle_img2_bg_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun(e,3)), lv.EVENT.SHORT_CLICKED, None) - - menustyle_img2_bg_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun2(e)), - lv.EVENT.PRESSING, None) def initialization(self): - self.is_sliding1 = 0 - self.is_sliding2 = 0 read_data = EventMesh.publish("get_storage_config","MainMenu") if read_data != None: if read_data == "1": @@ -1479,47 +1440,31 @@ class ThemeswitchScreen(Screen):#主题风格选择 # menustyle_img1.set_src("E:/static/theme_four1.png") # menustyle_img2.set_src("E:/static/theme_single2.png") - def fun1(self,e): + def fun(self,e,msg): code = e.get_code() - if code == lv.EVENT.PRESSING: - #print("PRESSING") - self.is_sliding1 += 1 + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("return_prev_screen") elif code == lv.EVENT.SHORT_CLICKED: #utime.sleep_ms(10) - print("1self.is_sliding",self.is_sliding1) - if self.is_sliding1 <= 5 and self.is_sliding1 != 0:#如果是在滑动中则不需要点击事件 - self.is_sliding1 = 0 + if msg == 2: menustyle_select.set_pos(int(190),int(80)) # menustyle_img1.set_src("E:/static/theme_four2.png") # menustyle_img2.set_src("E:/static/theme_single1.png") EventMesh.publish("set_mainmenu",msg = ["1",0]) # self.set_mainmenu(msg = [read_data,0]) EventMesh.publish("load_screen", {"screen": "main_menu"}) - - self.is_sliding1 =0 - - - def fun2(self,e): - code = e.get_code() - if code == lv.EVENT.PRESSING: - #print("PRESSING") - self.is_sliding2 += 1 - - elif code == lv.EVENT.SHORT_CLICKED: - #utime.sleep_ms(10) - print("2self.is_sliding",self.is_sliding2) - if self.is_sliding2 <= 5 and self.is_sliding2 != 0:#如果是在滑动中则不需要点击事件 - self.is_sliding2 = 0 + elif msg == 3: menustyle_select.set_pos(int(190),int(165)) # menustyle_img1.set_src("E:/static/theme_four1.png") # menustyle_img2.set_src("E:/static/theme_single2.png") EventMesh.publish("set_mainmenu",msg = ["2",0]) EventMesh.publish("load_screen", {"screen": "main_menu"}) - self.is_sliding2 = 0 - - def done_left_to_right(self): - EventMesh.publish("return_prev_screen") + def btn8_press(self): EventMesh.publish("watch_top_show") @@ -1561,6 +1506,8 @@ class ImeiScreen(Screen): def __init__(self): super().__init__() self.meta = imei_screen + imei_screen.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun(e)), + lv.EVENT.GESTURE, None) def initialization(self): imei = EventMesh.publish(constants.EVENT.GET_IMEI) @@ -1568,14 +1515,22 @@ class ImeiScreen(Screen): imei_qr.update(imei_qr_data,len(imei_qr_data)) imei_label.set_text(imei) + def fun(self,e): + code = e.get_code() + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("load_screen", {"screen": "setting"}) + def done_return(self): EventMesh.publish("load_screen", {"screen": "setting"}) def btn1_release(self): EventMesh.publish("load_screen", {"screen": "setting"}) - def done_left_to_right(self): - EventMesh.publish("return_prev_screen") + def btn8_press(self): EventMesh.publish("watch_top_show") @@ -1588,20 +1543,27 @@ class AppScreen(Screen): def __init__(self): super().__init__() self.meta = app_screen + app_screen.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun(e)), + lv.EVENT.GESTURE, None) def initialization(self): imei = EventMesh.publish(constants.EVENT.GET_IMEI) app_label.set_text(imei) + def fun(self,e): + code = e.get_code() + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("load_screen", {"screen": "setting"}) def done_return(self): EventMesh.publish("load_screen", {"screen": "setting"}) def btn1_release(self): EventMesh.publish("load_screen", {"screen": "setting"}) - - def done_left_to_right(self): - EventMesh.publish("return_prev_screen") def btn8_press(self): EventMesh.publish("watch_top_show") @@ -1722,17 +1684,20 @@ class BrightnessScreen(Screen): self.time = 10 self.flip_sw =0 self.meta = brightness_screen - brightness_add_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.add_level(e)), + brightness_screen.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun(e,1)), + lv.EVENT.GESTURE, None) + brightness_add_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun(e,2)), lv.EVENT.SHORT_CLICKED, None) - brightness_reduce_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.reduce_level(e)), + brightness_reduce_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun(e,3)), lv.EVENT.SHORT_CLICKED, None) - brightness_time_reduce_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.reduce_time_level(e)), + brightness_time_reduce_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun(e,4)), lv.EVENT.SHORT_CLICKED, None) - brightness_time_add_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.add_time_level(e)), + brightness_time_add_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun(e,5)), lv.EVENT.SHORT_CLICKED, None) - brightness_flip_label_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.flip_sw_cb(e)),lv.EVENT.SHORT_CLICKED, None) + brightness_flip_label_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun(e,6)),lv.EVENT.SHORT_CLICKED, None) + def initialization(self): self.level = EventMesh.publish("get_brightness_level") self.time = EventMesh.publish("get_brightness_time") @@ -1748,44 +1713,49 @@ class BrightnessScreen(Screen): else: brightness_flip_sw.add_state(lv.STATE.CHECKED) self.show_bar() - def add_level(self, e): - EventMesh.publish("push_add_brightness_level") - self.level = EventMesh.publish("get_brightness_level") - print("self.level:{}".format(self.level)) - self.show_bar() - - def reduce_level(self, e): - EventMesh.publish("push_reduce_brightness_level") - self.level = EventMesh.publish("get_brightness_level") - self.show_bar() - - def flip_sw_cb(self,e): + def fun(self,e,msg): code = e.get_code() - obj = e.get_target() - if code == lv.EVENT.SHORT_CLICKED: - if self.flip_sw == 0: - self.flip_sw = 1 - brightness_flip_sw.add_state(lv.STATE.CHECKED) - else: - self.flip_sw = 0 - brightness_flip_sw.clear_state(lv.STATE.CHECKED) - # print("self.flip_sw:",self.flip_sw) - EventMesh.publish("set_storage_config",["flip_sw",self.flip_sw]) - - def reduce_time_level(self, e): - if self.time > 5: - self.time-=5 - EventMesh.publish("set_brightness_time",self.time) - brightness_label_time_text.set_text("{}秒".format(self.time)) - - - - def add_time_level(self, e): - self.time+=5 - if self.time >= 30: - self.time = 30 - EventMesh.publish("set_brightness_time",self.time) - brightness_label_time_text.set_text("{}秒".format(self.time)) + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("load_screen", {"screen": "setting"}) + elif code == lv.EVENT.SHORT_CLICKED: + if msg == 2: + EventMesh.publish("push_add_brightness_level") + self.level = EventMesh.publish("get_brightness_level") + print("self.level:{}".format(self.level)) + self.show_bar() + + elif msg == 3: + EventMesh.publish("push_reduce_brightness_level") + self.level = EventMesh.publish("get_brightness_level") + self.show_bar() + + elif msg == 4: + if self.time > 5: + self.time-=5 + EventMesh.publish("set_brightness_time",self.time) + brightness_label_time_text.set_text("{}秒".format(self.time)) + + elif msg == 5: + self.time+=5 + if self.time >= 30: + self.time = 30 + EventMesh.publish("set_brightness_time",self.time) + brightness_label_time_text.set_text("{}秒".format(self.time)) + + elif msg == 6: + if self.flip_sw == 0: + self.flip_sw = 1 + brightness_flip_sw.add_state(lv.STATE.CHECKED) + else: + self.flip_sw = 0 + brightness_flip_sw.clear_state(lv.STATE.CHECKED) + # print("self.flip_sw:",self.flip_sw) + EventMesh.publish("set_storage_config",["flip_sw",self.flip_sw]) + @@ -2012,9 +1982,11 @@ class totalvolumeScreen(Screen):#总的铃声调节 def __init__(self): super().__init__() self.meta = volume_adjust_screen - totalvolume_add_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.add_volum_size(e)), + volume_adjust_screen.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun(e,1)), + lv.EVENT.GESTURE, None) + totalvolume_add_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun(e,2)), lv.EVENT.SHORT_CLICKED, None) - totalvolume_reduce_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.reduce_volum_size(e)), + totalvolume_reduce_imgbtn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.fun(e,3)), lv.EVENT.SHORT_CLICKED, None) self.volum_size = 8 self.aud = audio.Audio(0) @@ -2028,19 +2000,25 @@ class totalvolumeScreen(Screen):#总的铃声调节 self.volum_size = num self.aud.setVolume(self.volum_size) self.show_bar(0) - - def add_volum_size(self, e): - self.volum_size+=2 - if self.volum_size >= 11: - self.volum_size = 11 - self.show_bar(1) - - def reduce_volum_size(self, e): - - self.volum_size -= 2 - if self.volum_size < 0: - self.volum_size = 0 - self.show_bar(1) + def fun(self, e,msg): + code = e.get_code() + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("load_screen", {"screen": "setting"}) + elif code == lv.EVENT.SHORT_CLICKED: + if msg == 2: + self.volum_size+=2 + if self.volum_size >= 11: + self.volum_size = 11 + self.show_bar(1) + elif msg == 3: + self.volum_size -= 2 + if self.volum_size < 0: + self.volum_size = 0 + self.show_bar(1) def show_bar(self,msg): totalvolume_bar.set_value((100 // 11) * self.volum_size, lv.ANIM.OFF) diff --git a/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/ui_video.py b/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/ui_video.py index 3a7e70f2..a07df636 100644 --- a/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/ui_video.py +++ b/2.sdk/project/W8/sdk/services/microPython/ports/quectel/core/ui_video.py @@ -107,6 +107,7 @@ class cameraFullScreen(Screen):#相册已满 pass def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) pass @@ -158,6 +159,7 @@ class deletealbumScreen(Screen):#删除图片 pass def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) pass class cameraScreen(Screen):#相机拍照二级界面 @@ -319,6 +321,7 @@ class cameraScreen(Screen):#相机拍照二级界面 pass def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) pass @@ -333,6 +336,7 @@ camera_album_popup_img2 = None camera_album_popup_img3 = None camera_album_popup_img4 = None camera_album_popup_img5 = None +camera_album_popup_img = None class cameraalbumScreen(Screen):#相册 # NAME = "camera_album" @@ -342,12 +346,13 @@ class cameraalbumScreen(Screen):#相册 self.meta = None def initialization(self): - global camera_album_popup_screen ,camera_album_popup_label,camera_album_popup_img1,camera_album_popup_img2,camera_album_popup_img3,camera_album_popup_img4,camera_album_popup_img5 + global camera_album_popup_screen,camera_album_popup_img ,camera_album_popup_label,camera_album_popup_img1,camera_album_popup_img2,camera_album_popup_img3,camera_album_popup_img4,camera_album_popup_img5 if camera_album_popup_screen == None: camera_album_popup_screen = lv.obj() print("camera_album_popup_screen") camera_album_popup_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT) + camera_album_popup_screen.add_event_cb(lambda e:EventMesh.callback_wrapper(self.click_album(e,0)), lv.EVENT.GESTURE, None) camera_album_popup_label = lv.label(camera_album_popup_screen) camera_album_popup_label.set_pos(0, 100) @@ -370,14 +375,21 @@ class cameraalbumScreen(Screen):#相册 camera_album_popup_img2.set_pos(100, 230) camera_album_popup_img2.set_size(35, 35) camera_album_popup_img2.add_flag(lv.obj.FLAG.CLICKABLE) - camera_album_popup_img2.add_event_cb(lambda e: EventMesh.callback_wrapper(self.click_album(e,0)), lv.EVENT.SHORT_CLICKED, None) + camera_album_popup_img2.add_event_cb(lambda e: EventMesh.callback_wrapper(self.click_album(e,1)), lv.EVENT.SHORT_CLICKED, None) + + camera_album_popup_img = lv.img(camera_album_popup_screen) + camera_album_popup_img.set_pos(80, 220) + camera_album_popup_img.set_size(60, 62) + camera_album_popup_img.add_flag(lv.obj.FLAG.CLICKABLE) + camera_album_popup_img.add_event_cb(lambda e: EventMesh.callback_wrapper(self.click_album(e,1)), lv.EVENT.SHORT_CLICKED, None) + camera_album_popup_img3 = lv.img(camera_album_popup_screen) camera_album_popup_img3.set_pos(20, 20) camera_album_popup_img3.set_size(36,36) camera_album_popup_img3.add_flag(lv.obj.FLAG.CLICKABLE) camera_album_popup_img3.set_src("E:/static/RED_RETURN_PNG.png") - camera_album_popup_img3.add_event_cb(lambda e: EventMesh.callback_wrapper(self.click_album(e,1)), lv.EVENT.SHORT_CLICKED, None) + camera_album_popup_img3.add_event_cb(lambda e: EventMesh.callback_wrapper(self.click_album(e,2)), lv.EVENT.SHORT_CLICKED, None) self.meta = camera_album_popup_screen read_album = 0 @@ -387,39 +399,38 @@ class cameraalbumScreen(Screen):#相册 camera_album_popup_img1.clear_flag(lv.obj.FLAG.HIDDEN) camera_album_popup_img1.set_src("E:/static/1_camera.jpg") #'E:/6_camera.jpeg'"E:/static/1_camera.jpg" camera_album_popup_img2.clear_flag(lv.obj.FLAG.HIDDEN) + camera_album_popup_img.clear_flag(lv.obj.FLAG.HIDDEN) camera_album_popup_img2.set_src("E:/static/album_delete.png") + camera_album_popup_label.add_flag(lv.obj.FLAG.HIDDEN) else: camera_album_popup_img1.add_flag(lv.obj.FLAG.HIDDEN) camera_album_popup_img2.add_flag(lv.obj.FLAG.HIDDEN) + camera_album_popup_img.add_flag(lv.obj.FLAG.HIDDEN) camera_album_popup_label.clear_flag(lv.obj.FLAG.HIDDEN) def click_album(self,e,i): - if i == 0: - check_img = ql_fs.path_exists("/ext/static/1_camera.jpg") - if check_img == True :#图片存在 - uos.remove("/ext/static/1_camera.jpg")#删除单张图片 - album_data = int(EventMesh.publish("get_camera_num")) - - EventMesh.publish("set_camera_num",album_data-1) + code = e.get_code() + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("return_prev_screen") + elif code == lv.EVENT.SHORT_CLICKED: + if i == 1: + check_img = ql_fs.path_exists("/ext/static/1_camera.jpg") + if check_img == True :#图片存在 + uos.remove("/ext/static/1_camera.jpg")#删除单张图片 + album_data = int(EventMesh.publish("get_camera_num")) - EventMesh.publish("load_screen", {"screen": "delete_album"}) - return - - EventMesh.publish("load_screen", {"screen": "main_menu"}) + EventMesh.publish("set_camera_num",album_data-1) - # read_album = {} - # read_album = EventMesh.publish("get_camera_num") - # if len(read_album) != 0 and i < len(read_album): - # sort_new = {} - # sort_new = sorted(read_album.keys()) - # key = sort_new[i] - # value = int(read_album[key]["timeSec"]) - # self.meta_info = value - # print(self.meta_info,i) - # EventMesh.publish("load_screen", {"screen": "album_preview","meta": self.meta_info})#点击进入相册预览大图显示 - # print(i) + EventMesh.publish("load_screen", {"screen": "delete_album"}) + return + elif i == 2: + EventMesh.publish("load_screen", {"screen": "main_menu"}) pass def Close(self): @@ -438,6 +449,7 @@ class cameraalbumScreen(Screen):#相册 pass def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) pass @@ -549,6 +561,7 @@ class albumPreviewScreen(Screen):#点击预览 pass def btn8_press(self): + EventMesh.publish("watch_top_show") EventMesh.publish("load_screen", {"screen": "main_menu"}) pass @@ -1791,17 +1804,19 @@ class videolistScreen(Screen): print("videolist_screen") videolist_screen.set_scrollbar_mode(lv.SCROLLBAR_MODE.OFF) videolist_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT) + videolist_screen.add_event_cb(lambda e: EventMesh.callback_wrapper(self.calling_cb(e)), lv.EVENT.GESTURE, None) videolist_screen_list_screen = lv.obj(videolist_screen) - videolist_screen_list_screen.set_pos(0, 30) - videolist_screen_list_screen.set_size(LCD_SIZE_W, LCD_SIZE_H-30) + videolist_screen_list_screen.set_pos(0, 40) + videolist_screen_list_screen.set_size(LCD_SIZE_W, LCD_SIZE_H-40) videolist_screen_list_screen.set_scrollbar_mode(lv.SCROLLBAR_MODE.OFF) videolist_screen_list_screen.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT) + videolist_screen_list_screen.add_event_cb(lambda e: EventMesh.callback_wrapper(self.calling_cb(e)), lv.EVENT.GESTURE, None) videolist_top_title = lv.label(videolist_screen) videolist_top_title.set_pos(0, 5) - videolist_top_title.set_size(LCD_SIZE_W, 20) + videolist_top_title.set_size(LCD_SIZE_W, 30) videolist_top_title.set_text("视频通话账号") videolist_top_title.set_long_mode(lv.label.LONG.WRAP) videolist_top_title.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0) @@ -1809,7 +1824,7 @@ class videolistScreen(Screen): videolist_none_label = lv.label(videolist_screen) - videolist_none_label.set_pos(0, 60) + videolist_none_label.set_pos(0, 120) videolist_none_label.set_size(LCD_SIZE_W, 60) videolist_none_label.set_text("无SIM卡或未添加账号") videolist_none_label.set_long_mode(lv.label.LONG.WRAP) @@ -1818,15 +1833,15 @@ class videolistScreen(Screen): self.videolist_detail_list = lv.obj(videolist_screen_list_screen) self.videolist_detail_list.set_pos(0, 0) - self.videolist_detail_list.set_size(LCD_SIZE_W, LCD_SIZE_H-30+1) + self.videolist_detail_list.set_size(LCD_SIZE_W, LCD_SIZE_H-40+1) self.videolist_detail_list.set_scrollbar_mode(lv.SCROLLBAR_MODE.OFF) self.videolist_detail_list.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT) + self.videolist_detail_list.add_event_cb(lambda e: EventMesh.callback_wrapper(self.calling_cb(e)), lv.EVENT.GESTURE, None) for i in range(self.MXA_phone_num): contact_btn = lv.btn(self.videolist_detail_list) contact_btn.add_flag(lv.obj.FLAG.CLICKABLE) contact_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.calling_cb(e)), lv.EVENT.SHORT_CLICKED, None) - contact_btn.add_event_cb(lambda e: EventMesh.callback_wrapper(self.calling_cb(e)), lv.EVENT.PRESSING, None) contact_btn.add_flag(lv.obj.FLAG.HIDDEN) # contact_btn.add_style(style_press_btn, lv.PART.MAIN | lv.STATE.PRESSED) @@ -1926,26 +1941,41 @@ class videolistScreen(Screen): if self.videolist_detail_list != None: self.videolist_detail_list.add_flag(lv.obj.FLAG.HIDDEN)#隐藏空文本 - def calling_cb(self,e): code = e.get_code() - if code == lv.EVENT.PRESSING: - #print("PRESSING") - self.is_sliding += 1 + indev = lv.indev_get_act() + lv.indev_t.wait_release(indev) + dir = lv.indev_t.get_gesture_dir(indev) + if code == lv.EVENT.GESTURE: #手势向左还是向右 还是向下向上 + if dir == lv.DIR.RIGHT: + EventMesh.publish("load_screen", {"screen": "main_menu"}) elif code == lv.EVENT.SHORT_CLICKED: - #utime.sleep_ms(10) - print("1self.is_sliding",self.is_sliding) - if self.is_sliding <= 5 and self.is_sliding != 0:#如果是在滑动中则不需要点击事件 - self.is_sliding = 0 - if EventMesh.publish(constants.EVENT.GET_CONNECT) == 1:#有卡时触发sos报警 无卡时自动关机 - msg_text = e.get_target().get_child(1).get_text() - # EventMesh.publish("publish_message_event_ui",{"func":self.calling,"data":msg_text}) - EventMesh.publish("load_screen", {"screen": "vedio_mode","meta":msg_text}) - else: - EventMesh.publish("load_screen", {"screen": "no_sim_popup_screen"}) + if EventMesh.publish(constants.EVENT.GET_CONNECT) == 1:#有卡 + msg_text = e.get_target().get_child(1).get_text() + EventMesh.publish("load_screen", {"screen": "vedio_mode","meta":msg_text}) + else: + EventMesh.publish("load_screen", {"screen": "no_sim_popup_screen"}) + + # def calling_cb(self,e): + # code = e.get_code() + # if code == lv.EVENT.PRESSING: + # #print("PRESSING") + # self.is_sliding += 1 + + # elif code == lv.EVENT.SHORT_CLICKED: + # #utime.sleep_ms(10) + # print("1self.is_sliding",self.is_sliding) + # if self.is_sliding <= 5 and self.is_sliding != 0:#如果是在滑动中则不需要点击事件 + # self.is_sliding = 0 + # if EventMesh.publish(constants.EVENT.GET_CONNECT) == 1:#有卡 + # msg_text = e.get_target().get_child(1).get_text() + # # EventMesh.publish("publish_message_event_ui",{"func":self.calling,"data":msg_text}) + # EventMesh.publish("load_screen", {"screen": "vedio_mode","meta":msg_text}) + # else: + # EventMesh.publish("load_screen", {"screen": "no_sim_popup_screen"}) - self.is_sliding =0 + # self.is_sliding =0 def calling(self,msg_text):