Music player screen is almost done, a few things more to tweak
This commit is contained in:
parent
2f50aa50c6
commit
faefc7df74
@ -58,10 +58,10 @@
|
||||
<Option compilerVar="CC" />
|
||||
</Unit>
|
||||
<Unit filename="compass_screen.h" />
|
||||
<Unit filename="find_phone_screen.c">
|
||||
<Unit filename="find_my_phone_screen.c">
|
||||
<Option compilerVar="CC" />
|
||||
</Unit>
|
||||
<Unit filename="find_phone_screen.h" />
|
||||
<Unit filename="find_my_phone_screen.h" />
|
||||
<Unit filename="firmware_version.h" />
|
||||
<Unit filename="lv_conf.h" />
|
||||
<Unit filename="lv_drivers/display/ILI9341.h" />
|
||||
@ -1653,6 +1653,10 @@
|
||||
<Option compilerVar="CC" />
|
||||
</Unit>
|
||||
<Unit filename="menu_screen.h" />
|
||||
<Unit filename="music_control_screen.c">
|
||||
<Option compilerVar="CC" />
|
||||
</Unit>
|
||||
<Unit filename="music_control_screen.h" />
|
||||
<Unit filename="rsrc/hour_hand.png" />
|
||||
<Unit filename="settings_screen.c">
|
||||
<Option compilerVar="CC" />
|
||||
|
@ -2,126 +2,6 @@
|
||||
<CodeBlocks_layout_file>
|
||||
<FileVersion major="1" minor="0" />
|
||||
<ActiveTarget name="Debug" />
|
||||
<File name="compass_screen.c" open="0" top="0" tabpos="11" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="6172" topLine="154" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\widgets\label\lv_label.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="5648" topLine="194" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\misc\lv_anim.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="3835" topLine="68" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lv_drv_conf.h" open="0" top="0" tabpos="3" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="6602" topLine="208" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\examples\widgets\bar\lv_example_bar_6.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="181" topLine="0" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\misc\lv_types.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="1759" topLine="61" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\widgets\spinbox\lv_spinbox.h" open="0" top="0" tabpos="18" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="4262" topLine="120" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_obj_class.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="1857" topLine="35" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_obj_tree.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="1234" topLine="139" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="watch_casio_assets.c" open="0" top="0" tabpos="2" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="2981397" topLine="949" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\draw\lv_img_buf.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="6210" topLine="113" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\misc\lv_timer.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="5053" topLine="144" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lv_conf.h" open="0" top="0" tabpos="5" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="555" topLine="10" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_event.h" open="1" top="0" tabpos="7" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="5693" topLine="115" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\widgets\chart\lv_chart.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="11658" topLine="336" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\font\lv_font_montserrat_12.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="0" topLine="22" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lv_drivers\win32drv\win32drv.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="524" topLine="954" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_obj_scroll.h" open="0" top="0" tabpos="16" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="1988" topLine="67" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\misc\lv_color.c" open="0" top="0" tabpos="6" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="10782" topLine="316" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="compass_screen.h" open="0" top="0" tabpos="5" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="1253" topLine="18" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="menu_screen.c" open="0" top="0" tabpos="5" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="3627" topLine="67" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_obj_style_gen.c" open="0" top="0" tabpos="7" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="13491" topLine="412" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\hal\lv_hal_indev.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="3566" topLine="102" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="settings_screen.c" open="1" top="1" tabpos="8" split="0" active="1" splitpos="513" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="25034" topLine="437" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="watch_menu_icons.c" open="0" top="0" tabpos="18" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="869291" topLine="156" />
|
||||
@ -147,129 +27,14 @@
|
||||
<Collapse line="1729" />
|
||||
</Folding>
|
||||
</File>
|
||||
<File name="lvgl\src\layouts\flex\lv_flex.c" open="0" top="0" tabpos="8" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<File name="lvgl\src\core\lv_obj.h" open="0" top="0" tabpos="10" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="3097" topLine="74" />
|
||||
<Cursor1 position="2638" topLine="87" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lv_drivers\win_drv.h" open="0" top="0" tabpos="10" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<File name="lvgl\demos\widgets\assets\img_demo_widgets_avatar.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="585" topLine="0" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_obj_pos.h" open="0" top="0" tabpos="4" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="7730" topLine="167" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_disp.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="7126" topLine="230" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lv_drivers\display\monitor.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="289" topLine="31" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\widgets\imgbtn\lv_imgbtn.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="2184" topLine="61" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\widgets\list\lv_list.h" open="0" top="0" tabpos="7" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="721" topLine="16" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\misc\lv_timer.h" open="0" top="0" tabpos="10" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="635" topLine="36" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="firmware_version.h" open="0" top="0" tabpos="9" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="160" topLine="0" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="watch_face.c" open="1" top="0" tabpos="4" split="0" active="1" splitpos="702" zoom_1="1" zoom_2="-1">
|
||||
<Cursor>
|
||||
<Cursor1 position="2615" topLine="83" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_obj_class.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="3011" topLine="100" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\lv_api_map.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="722" topLine="32" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_refr.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="2447" topLine="75" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\misc\lv_log.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="1509" topLine="59" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\hal\lv_hal_indev.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="5065" topLine="123" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\widgets\menu\lv_menu.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="3706" topLine="117" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="settings_screen.h" open="1" top="0" tabpos="9" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="315" topLine="0" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_indev.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="3034" topLine="107" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\widgets\label\lv_label.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="1299" topLine="36" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\font\lv_font_fmt_txt.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="0" topLine="24" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="altimeter_screen.c" open="0" top="0" tabpos="6" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="13638" topLine="409" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\libs\ffmpeg\lv_ffmpeg.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="5784" topLine="170" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lv_drivers\lv_drv_conf_template.h" open="0" top="0" tabpos="11" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="10670" topLine="390" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_obj_tree.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="2082" topLine="62" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\widgets\list\lv_list.c" open="0" top="0" tabpos="6" split="0" active="1" splitpos="0" zoom_1="2" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="2391" topLine="53" />
|
||||
<Cursor1 position="1282774" topLine="472" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\font\lv_font.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
@ -277,9 +42,14 @@
|
||||
<Cursor1 position="5535" topLine="120" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\misc\lv_log.h" open="0" top="0" tabpos="2" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<File name="lvgl\src\widgets\spinbox\lv_spinbox.h" open="0" top="0" tabpos="18" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="2557" topLine="68" />
|
||||
<Cursor1 position="4262" topLine="120" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_refr.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="2447" topLine="75" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="altimeter_screen.h" open="0" top="0" tabpos="7" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
@ -287,6 +57,166 @@
|
||||
<Cursor1 position="1028" topLine="30" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\lv_conf_template.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="0" topLine="56" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="altimeter_screen_assets.c" open="0" top="0" tabpos="19" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="96342" topLine="161" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\widgets\chart\lv_chart.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="11658" topLine="336" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_disp.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="7126" topLine="230" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="settings_screen.c" open="1" top="1" tabpos="5" split="0" active="1" splitpos="513" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="23555" topLine="429" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lv_drivers\win32drv\win32drv.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="524" topLine="954" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\misc\lv_color.c" open="0" top="0" tabpos="6" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="10782" topLine="316" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\hal\lv_hal_indev.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="5065" topLine="123" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\misc\lv_timer.h" open="0" top="0" tabpos="10" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="635" topLine="36" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_obj.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="7842" topLine="283" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\layouts\flex\lv_flex.h" open="0" top="0" tabpos="7" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="950" topLine="43" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="menu_screen.c" open="0" top="0" tabpos="5" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="3627" topLine="67" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="compass_assets.c" open="0" top="0" tabpos="13" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="0" topLine="143" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_obj_class.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="1857" topLine="35" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="compass_screen.h" open="0" top="0" tabpos="5" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="1253" topLine="18" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\examples\widgets\menu\lv_example_menu_5.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="7631" topLine="141" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lv_drivers\win_drv.h" open="0" top="0" tabpos="10" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="585" topLine="0" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="altimeter_screen.c" open="0" top="0" tabpos="6" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="13638" topLine="409" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\misc\lv_log.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="1509" topLine="59" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lv_drivers\indev\keyboard.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="440" topLine="14" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\widgets\menu\lv_menu.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="3321" topLine="109" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\font\lv_font_montserrat_30.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="869" topLine="0" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\hal\lv_hal_disp.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="823" topLine="24" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\widgets\label\lv_label.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="1299" topLine="36" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\hal\lv_hal_indev.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="3566" topLine="102" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_obj_style_gen.h" open="0" top="0" tabpos="11" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="13017" topLine="346" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\misc\lv_types.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="1759" topLine="61" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="watch_face.h" open="1" top="0" tabpos="3" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="3303" topLine="82" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_obj_pos.h" open="0" top="0" tabpos="4" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="7730" topLine="167" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_event.h" open="1" top="0" tabpos="4" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="5693" topLine="115" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\misc\lv_anim.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="3835" topLine="68" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\widgets\list\lv_list.h" open="0" top="0" tabpos="7" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="721" topLine="16" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\widgets\tileview\lv_tileview.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="1055" topLine="40" />
|
||||
@ -296,94 +226,24 @@
|
||||
<Collapse line="995" />
|
||||
</Folding>
|
||||
</File>
|
||||
<File name="lvgl\src\widgets\img\lv_img.h" open="0" top="0" tabpos="3" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<File name="lvgl\src\core\lv_obj_class.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="4439" topLine="123" />
|
||||
<Cursor1 position="3011" topLine="100" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lv_drivers\display\SSD1963.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<File name="lvgl\src\font\lv_font_montserrat_12.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="1563" topLine="27" />
|
||||
<Cursor1 position="0" topLine="22" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_obj_pos.c" open="0" top="0" tabpos="12" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<File name="lvgl\src\lv_api_map.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="10562" topLine="336" />
|
||||
<Cursor1 position="722" topLine="32" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lv_drivers\win32drv\win32drv.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<File name="lvgl\src\widgets\imgbtn\lv_imgbtn.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="0" topLine="15" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\layouts\grid\lv_grid.h" open="0" top="0" tabpos="13" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="579" topLine="17" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_obj_style_gen.h" open="0" top="0" tabpos="11" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="13017" topLine="346" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\misc\lv_color.h" open="0" top="0" tabpos="5" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="6581" topLine="189" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\misc\lv_style.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="9059" topLine="238" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\widgets\menu\lv_menu.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="3321" topLine="109" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lv_drivers\indev\keyboard.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="440" topLine="14" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\draw\lv_draw_rect.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="539" topLine="9" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_indev_scroll.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="14405" topLine="323" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\draw\lv_draw_img.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="5230" topLine="191" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="common_screen_components.c" open="0" top="0" tabpos="8" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="498" topLine="0" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\widgets\img\lv_img.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="1863" topLine="59" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\demos\widgets\lv_demo_widgets.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="2825" topLine="122" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="altimeter_screen_assets.c" open="0" top="0" tabpos="19" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="96342" topLine="161" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\layouts\flex\lv_flex.h" open="0" top="0" tabpos="7" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="950" topLine="43" />
|
||||
<Cursor1 position="2184" topLine="61" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\widgets\roller\lv_roller.h" open="0" top="0" tabpos="6" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
@ -391,49 +251,14 @@
|
||||
<Cursor1 position="715" topLine="26" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\lv_conf_template.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="0" topLine="56" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\font\lv_font_montserrat_30.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="869" topLine="0" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_disp.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="615" topLine="25" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\font\lv_symbol_def.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="1135" topLine="14" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_obj.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="7842" topLine="283" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\demos\widgets\assets\img_demo_widgets_avatar.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="1282774" topLine="472" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="watch_face.h" open="1" top="0" tabpos="6" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="3303" topLine="82" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\lvgl.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="0" topLine="138" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\demos\widgets\lv_demo_widgets.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<File name="lvgl\src\draw\lv_draw_img.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="456" topLine="6" />
|
||||
<Cursor1 position="5230" topLine="191" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="common_screen_components.h" open="0" top="0" tabpos="7" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
@ -441,39 +266,49 @@
|
||||
<Cursor1 position="517" topLine="0" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\hal\lv_hal_disp.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<File name="lvgl\src\widgets\label\lv_label.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="11123" topLine="327" />
|
||||
<Cursor1 position="5648" topLine="194" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="main.c" open="1" top="0" tabpos="5" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<File name="settings_screen.h" open="1" top="0" tabpos="6" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="2852" topLine="77" />
|
||||
<Cursor1 position="315" topLine="0" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="compass_assets.c" open="0" top="0" tabpos="13" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<File name="lvgl\examples\widgets\bar\lv_example_bar_6.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="0" topLine="143" />
|
||||
<Cursor1 position="181" topLine="0" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="menu_screen.h" open="0" top="0" tabpos="2" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<File name="lvgl\src\core\lv_indev_scroll.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="48" topLine="0" />
|
||||
<Cursor1 position="14405" topLine="323" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_obj.h" open="0" top="0" tabpos="10" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<File name="lvgl\src\libs\ffmpeg\lv_ffmpeg.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="2638" topLine="87" />
|
||||
<Cursor1 position="5784" topLine="170" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_obj_scroll.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<File name="lvgl\src\misc\lv_timer.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="12525" topLine="363" />
|
||||
<Cursor1 position="5053" topLine="144" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\misc\lv_area.h" open="0" top="0" tabpos="15" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<File name="watch_face.c" open="1" top="0" tabpos="1" split="0" active="1" splitpos="702" zoom_1="1" zoom_2="-1">
|
||||
<Cursor>
|
||||
<Cursor1 position="1789" topLine="74" />
|
||||
<Cursor1 position="2615" topLine="83" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lv_drivers\win32drv\win32drv.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="0" topLine="15" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\misc\lv_color.h" open="0" top="0" tabpos="5" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="6581" topLine="189" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_obj_style.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
@ -481,19 +316,184 @@
|
||||
<Cursor1 position="7273" topLine="217" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_disp.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="615" topLine="25" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_obj_scroll.h" open="0" top="0" tabpos="16" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="1988" topLine="67" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\misc\lv_area.h" open="0" top="0" tabpos="15" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="1789" topLine="74" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\widgets\list\lv_list.c" open="0" top="0" tabpos="6" split="0" active="1" splitpos="0" zoom_1="2" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="2391" topLine="53" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="menu_screen.h" open="0" top="0" tabpos="2" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="48" topLine="0" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_obj_tree.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="1234" topLine="139" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lv_drivers\display\SSD1963.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="1563" topLine="27" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="watch_casio_assets.c" open="0" top="0" tabpos="2" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="2981397" topLine="949" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\demos\widgets\lv_demo_widgets.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="456" topLine="6" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\hal\lv_hal_disp.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="11123" topLine="327" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="common_screen_components.c" open="0" top="0" tabpos="8" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="498" topLine="0" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\layouts\flex\lv_flex.c" open="0" top="0" tabpos="8" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="3097" topLine="74" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lv_drv_conf.h" open="0" top="0" tabpos="3" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="6602" topLine="208" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="main.c" open="1" top="0" tabpos="2" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="2852" topLine="77" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_indev.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="3034" topLine="107" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\widgets\imgbtn\lv_imgbtn.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="2129" topLine="53" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\hal\lv_hal_disp.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<File name="lvgl\src\font\lv_font_fmt_txt.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="823" topLine="24" />
|
||||
<Cursor1 position="0" topLine="24" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\examples\widgets\menu\lv_example_menu_5.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<File name="lvgl\src\draw\lv_img_buf.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="7631" topLine="141" />
|
||||
<Cursor1 position="6210" topLine="113" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="compass_screen.c" open="0" top="0" tabpos="11" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="6172" topLine="154" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\widgets\menu\lv_menu.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="3706" topLine="117" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\draw\lv_draw_rect.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="539" topLine="9" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_obj_scroll.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="12525" topLine="363" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="firmware_version.h" open="0" top="0" tabpos="9" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="160" topLine="0" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\demos\widgets\lv_demo_widgets.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="2825" topLine="122" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\misc\lv_log.h" open="0" top="0" tabpos="2" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="2557" topLine="68" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\widgets\img\lv_img.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="1863" topLine="59" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_obj_style_gen.c" open="0" top="0" tabpos="7" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="13491" topLine="412" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_obj_tree.c" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="2082" topLine="62" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lv_drivers\display\monitor.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="289" topLine="31" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\widgets\img\lv_img.h" open="0" top="0" tabpos="3" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="4439" topLine="123" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\layouts\grid\lv_grid.h" open="0" top="0" tabpos="13" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="579" topLine="17" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lv_conf.h" open="0" top="0" tabpos="5" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="555" topLine="10" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\font\lv_symbol_def.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="1135" topLine="14" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\misc\lv_style.h" open="0" top="0" tabpos="0" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="9059" topLine="238" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lvgl\src\core\lv_obj_pos.c" open="0" top="0" tabpos="12" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="10562" topLine="336" />
|
||||
</Cursor>
|
||||
</File>
|
||||
<File name="lv_drivers\lv_drv_conf_template.h" open="0" top="0" tabpos="11" split="0" active="1" splitpos="0" zoom_1="0" zoom_2="0">
|
||||
<Cursor>
|
||||
<Cursor1 position="10670" topLine="390" />
|
||||
</Cursor>
|
||||
</File>
|
||||
</CodeBlocks_layout_file>
|
||||
|
@ -74,6 +74,11 @@ static void sendMyFindPhoneBLECommandCb(bool findPhone)
|
||||
LV_LOG_USER("Send command to find phone with value : %d", findPhone);
|
||||
}
|
||||
|
||||
static void musicPlaybackCtrlCb(MusicPlaybackCtrlAction_e musicPlaybackCtrlAction)
|
||||
{
|
||||
LV_LOG_USER("Action to perform : %u", musicPlaybackCtrlAction);
|
||||
}
|
||||
|
||||
WatchFace_t watchFace;
|
||||
MenuScreen_t menuScreen;
|
||||
CompassScreen_t compassScreen;
|
||||
@ -111,6 +116,11 @@ int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR szCmdLi
|
||||
find_my_phone_screen_register_BLE_command_send_cb(&findMyPhoneScreen, &(sendMyFindPhoneBLECommandCb));
|
||||
find_my_phone_screen_notify_BLE_connection_state(&findMyPhoneScreen, true);
|
||||
music_player_screen_init(&musicPlayerScreen);
|
||||
music_player_screen_register_music_playback_control_cb(&musicPlayerScreen, &(musicPlaybackCtrlCb));
|
||||
music_player_screen_set_playing_music_title_and_artist(&musicPlayerScreen, "Sun Is Up Hoho Haha", "Inna");
|
||||
music_player_screen_set_music_duration(&musicPlayerScreen, 5896);
|
||||
music_player_screen_set_music_position(&musicPlayerScreen, 122);
|
||||
music_player_screen_set_music_playing_state(&musicPlayerScreen, MUSIC_CONTROL_PLAY);
|
||||
|
||||
altimeter_screen_register_measurement_cb(&altimeterScreen, &(alti_meas_cb));
|
||||
|
||||
|
@ -1,5 +1,7 @@
|
||||
#include "music_player_screen.h"
|
||||
#include "menu_screen.h"
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
static void gesture_event_cb(lv_event_t *e)
|
||||
{
|
||||
@ -36,6 +38,35 @@ static void cleanup_event_cb(lv_event_t *e)
|
||||
LV_LOG_USER("cleanup");
|
||||
}
|
||||
|
||||
static void music_player_button_click_event_cb(lv_event_t *e)
|
||||
{
|
||||
MusicPlayerScreen_t *musicPlayerScreen = e->user_data;
|
||||
MusicPlaybackCtrlAction_e action = (MusicPlaybackCtrlAction_e)lv_obj_get_user_data(e->target);
|
||||
|
||||
LV_LOG_USER("Action is : %u, code is : %u", action, e->code);
|
||||
if(musicPlayerScreen->musicPlaybackCtrlCb)
|
||||
{
|
||||
if(action == MUSIC_CONTROL_PLAY)
|
||||
{
|
||||
MusicPlaybackCtrlAction_e stateToApply = musicPlayerScreen->currentPlayState == MUSIC_CONTROL_PLAY ? MUSIC_CONTROL_PAUSE : MUSIC_CONTROL_PLAY;
|
||||
musicPlayerScreen->musicPlaybackCtrlCb(stateToApply);
|
||||
music_player_screen_set_music_playing_state(musicPlayerScreen, stateToApply);
|
||||
}
|
||||
else if(action == MUSIC_CONTROL_NEXT)
|
||||
{
|
||||
musicPlayerScreen->musicPlaybackCtrlCb(e->code == LV_EVENT_SHORT_CLICKED ? MUSIC_CONTROL_FORWARD : MUSIC_CONTROL_NEXT);
|
||||
}
|
||||
else if(action == MUSIC_CONTROL_PREVIOUS)
|
||||
{
|
||||
musicPlayerScreen->musicPlaybackCtrlCb(e->code == LV_EVENT_SHORT_CLICKED ? MUSIC_CONTROL_REWIND : MUSIC_CONTROL_PREVIOUS);
|
||||
}
|
||||
else
|
||||
{
|
||||
musicPlayerScreen->musicPlaybackCtrlCb(action);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void music_player_screen_init(MusicPlayerScreen_t * const musicPlayerScreen)
|
||||
{
|
||||
if(!musicPlayerScreen)
|
||||
@ -45,6 +76,7 @@ void music_player_screen_init(MusicPlayerScreen_t * const musicPlayerScreen)
|
||||
}
|
||||
|
||||
memset(musicPlayerScreen, 0, sizeof(MusicPlayerScreen_t));
|
||||
musicPlayerScreen->currentPlayState = MUSIC_CONTROL_PAUSE;
|
||||
}
|
||||
|
||||
void music_player_screen_register_music_playback_control_cb(MusicPlayerScreen_t * const musicPlayerScreen, MusicPlaybackCtrlCb_t musicPlaybackCtrlCb)
|
||||
@ -58,6 +90,110 @@ void music_player_screen_register_music_playback_control_cb(MusicPlayerScreen_t
|
||||
musicPlayerScreen->musicPlaybackCtrlCb = musicPlaybackCtrlCb;
|
||||
}
|
||||
|
||||
void music_player_screen_set_playing_music_title_and_artist(MusicPlayerScreen_t * const musicPlayerScreen, const char *title, const char *artist)
|
||||
{
|
||||
if(!musicPlayerScreen)
|
||||
{
|
||||
LV_LOG_ERROR("NULL pointer given !");
|
||||
return;
|
||||
}
|
||||
|
||||
if(title)
|
||||
{
|
||||
strncpy(musicPlayerScreen->titleText, title, sizeof musicPlayerScreen->titleText);
|
||||
musicPlayerScreen->titleText[sizeof(musicPlayerScreen->titleText) - 1] = '\0';
|
||||
|
||||
if(musicPlayerScreen->titleLabel)
|
||||
{
|
||||
lv_label_set_text_static(musicPlayerScreen->titleLabel, musicPlayerScreen->titleText);
|
||||
}
|
||||
}
|
||||
|
||||
if(artist)
|
||||
{
|
||||
strncpy(musicPlayerScreen->artistText, artist, sizeof musicPlayerScreen->artistText);
|
||||
musicPlayerScreen->artistText[sizeof(musicPlayerScreen->artistText) - 1] = '\0';
|
||||
|
||||
if(musicPlayerScreen->artistLabel)
|
||||
{
|
||||
lv_label_set_text_static(musicPlayerScreen->artistLabel, musicPlayerScreen->artistText);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void music_player_screen_set_music_duration(MusicPlayerScreen_t * const musicPlayerScreen, uint16_t durationInSeconds)
|
||||
{
|
||||
if(!musicPlayerScreen)
|
||||
{
|
||||
LV_LOG_ERROR("NULL pointer given !");
|
||||
return;
|
||||
}
|
||||
|
||||
musicPlayerScreen->currentMusicDuration = durationInSeconds;
|
||||
//If the widget is currently displayed, we update it as well !
|
||||
if(!musicPlayerScreen->playbackArc) return;
|
||||
|
||||
lv_arc_set_range(musicPlayerScreen->playbackArc, 0, musicPlayerScreen->currentMusicDuration);
|
||||
|
||||
if(durationInSeconds < 3600)sprintf(musicPlayerScreen->durationTimeLabel.text, "%s%u:%s%u", durationInSeconds / 60 < 10 ? "0":"", durationInSeconds / 60, durationInSeconds % 60 < 10 ? "0":"", durationInSeconds % 60);
|
||||
else sprintf(musicPlayerScreen->durationTimeLabel.text, "%s%u:%s%u:%s%u", durationInSeconds / 3600 < 10 ? "0":"", durationInSeconds / 3600,
|
||||
(durationInSeconds % 3600) / 60 < 10 ? "0":"", (durationInSeconds % 3600) / 60,
|
||||
(durationInSeconds % 3600) % 60 < 10 ? "0":"", (durationInSeconds % 3600) % 60);
|
||||
lv_label_set_text_static(musicPlayerScreen->durationTimeLabel.label, musicPlayerScreen->durationTimeLabel.text);
|
||||
}
|
||||
|
||||
void music_player_screen_set_music_position(MusicPlayerScreen_t * const musicPlayerScreen, uint16_t positionInSeconds)
|
||||
{
|
||||
if(!musicPlayerScreen)
|
||||
{
|
||||
LV_LOG_ERROR("NULL pointer given !");
|
||||
return;
|
||||
}
|
||||
|
||||
if(positionInSeconds > musicPlayerScreen->currentMusicDuration) positionInSeconds = musicPlayerScreen->currentMusicDuration;
|
||||
|
||||
musicPlayerScreen->currentMusicPosition = positionInSeconds;
|
||||
//If the widget is currently displayed, we update it as well !
|
||||
if(!musicPlayerScreen->playbackArc) return;
|
||||
|
||||
lv_arc_set_value(musicPlayerScreen->playbackArc, musicPlayerScreen->currentMusicPosition);
|
||||
|
||||
if(positionInSeconds < 3600)sprintf(musicPlayerScreen->positionTimeLabel.text, "%s%u:%s%u", positionInSeconds / 60 < 10 ? "0":"", positionInSeconds / 60, positionInSeconds % 60 < 10 ? "0":"", positionInSeconds % 60);
|
||||
else sprintf(musicPlayerScreen->positionTimeLabel.text, "%s%u:%s%u:%s%u", positionInSeconds / 3600 < 10 ? "0":"", positionInSeconds / 3600,
|
||||
(positionInSeconds % 3600) / 60 < 10 ? "0":"", (positionInSeconds % 3600) / 60,
|
||||
(positionInSeconds % 3600) % 60 < 10 ? "0":"", (positionInSeconds % 3600) % 60);
|
||||
lv_label_set_text_static(musicPlayerScreen->positionTimeLabel.label, musicPlayerScreen->positionTimeLabel.text);
|
||||
}
|
||||
|
||||
void music_player_screen_set_music_playing_state(MusicPlayerScreen_t * const musicPlayerScreen, MusicPlaybackCtrlAction_e playingState)
|
||||
{
|
||||
if(!musicPlayerScreen)
|
||||
{
|
||||
LV_LOG_ERROR("NULL pointer given !");
|
||||
return;
|
||||
}
|
||||
if(musicPlayerScreen->currentPlayState == playingState) return;
|
||||
if(playingState != MUSIC_CONTROL_PAUSE && playingState != MUSIC_CONTROL_PLAY) return;
|
||||
|
||||
musicPlayerScreen->currentPlayState = playingState;
|
||||
|
||||
if(!musicPlayerScreen->playPauseBtn.label) return;
|
||||
|
||||
strcpy(musicPlayerScreen->playPauseBtn.icon, musicPlayerScreen->currentPlayState == MUSIC_CONTROL_PLAY ? LV_SYMBOL_PAUSE : LV_SYMBOL_PLAY);
|
||||
lv_label_set_text_static(musicPlayerScreen->playPauseBtn.label, musicPlayerScreen->playPauseBtn.icon);
|
||||
}
|
||||
|
||||
bool music_player_screen_is_in_use(MusicPlayerScreen_t * const musicPlayerScreen)
|
||||
{
|
||||
if(!musicPlayerScreen)
|
||||
{
|
||||
LV_LOG_ERROR("NULL pointer given !");
|
||||
return false;
|
||||
}
|
||||
|
||||
return musicPlayerScreen->display != NULL;
|
||||
}
|
||||
|
||||
void music_player_screen_create(MusicPlayerScreen_t * const musicPlayerScreen)
|
||||
{
|
||||
if(!musicPlayerScreen)
|
||||
@ -75,6 +211,156 @@ void music_player_screen_create(MusicPlayerScreen_t * const musicPlayerScreen)
|
||||
musicPlayerScreen->display = lv_obj_create(NULL);
|
||||
lv_obj_set_style_bg_color(musicPlayerScreen->display, lv_color_black(), LV_PART_MAIN);
|
||||
|
||||
//Let's create the UI for this amazing music player ...
|
||||
//Play/Pause button
|
||||
if(musicPlayerScreen->playPauseBtn.button)
|
||||
{
|
||||
LV_LOG_ERROR("playPauseBtn should be NULL here !");
|
||||
lv_obj_del(musicPlayerScreen->playPauseBtn.button);
|
||||
musicPlayerScreen->playPauseBtn.button = NULL;
|
||||
}
|
||||
musicPlayerScreen->playPauseBtn.button = lv_btn_create(musicPlayerScreen->display);
|
||||
lv_obj_set_size(musicPlayerScreen->playPauseBtn.button, 60, 60);
|
||||
lv_obj_set_style_radius(musicPlayerScreen->playPauseBtn.button, LV_RADIUS_CIRCLE, LV_PART_MAIN);
|
||||
lv_obj_align(musicPlayerScreen->playPauseBtn.button, LV_ALIGN_BOTTOM_MID, 0, -80);
|
||||
|
||||
musicPlayerScreen->playPauseBtn.label = lv_label_create(musicPlayerScreen->playPauseBtn.button);
|
||||
strcpy(musicPlayerScreen->playPauseBtn.icon, musicPlayerScreen->currentPlayState == MUSIC_CONTROL_PLAY ? LV_SYMBOL_PAUSE : LV_SYMBOL_PLAY);
|
||||
lv_label_set_text_static(musicPlayerScreen->playPauseBtn.label, musicPlayerScreen->playPauseBtn.icon);
|
||||
lv_obj_set_style_text_font(musicPlayerScreen->playPauseBtn.label, &lv_font_montserrat_30, LV_PART_MAIN);
|
||||
lv_obj_center(musicPlayerScreen->playPauseBtn.label);
|
||||
|
||||
lv_obj_set_user_data(musicPlayerScreen->playPauseBtn.button, MUSIC_CONTROL_PLAY);
|
||||
lv_obj_add_event_cb(musicPlayerScreen->playPauseBtn.button, &(music_player_button_click_event_cb), LV_EVENT_CLICKED, musicPlayerScreen);
|
||||
|
||||
//Previous track button
|
||||
lv_obj_t *previousBtn = lv_btn_create(musicPlayerScreen->display);
|
||||
lv_obj_set_size(previousBtn, 47, 47);
|
||||
lv_obj_set_style_radius(previousBtn, LV_RADIUS_CIRCLE, LV_PART_MAIN);
|
||||
lv_obj_align_to(previousBtn, musicPlayerScreen->playPauseBtn.label, LV_ALIGN_OUT_LEFT_MID, -25, 0);
|
||||
|
||||
lv_obj_t *previousBtnLabel = lv_label_create(previousBtn);
|
||||
lv_label_set_text_static(previousBtnLabel, LV_SYMBOL_LEFT LV_SYMBOL_LEFT);
|
||||
lv_obj_set_style_text_font(previousBtnLabel, &lv_font_montserrat_24, LV_PART_MAIN);
|
||||
lv_obj_center(previousBtnLabel);
|
||||
|
||||
lv_obj_set_user_data(previousBtn, (void *)MUSIC_CONTROL_PREVIOUS);
|
||||
lv_obj_add_event_cb(previousBtn, &(music_player_button_click_event_cb), LV_EVENT_SHORT_CLICKED, musicPlayerScreen);
|
||||
lv_obj_add_event_cb(previousBtn, &(music_player_button_click_event_cb), LV_EVENT_LONG_PRESSED, musicPlayerScreen);
|
||||
|
||||
//Next track button
|
||||
lv_obj_t *nextBtn = lv_btn_create(musicPlayerScreen->display);
|
||||
lv_obj_set_size(nextBtn, 47, 47);
|
||||
lv_obj_set_style_radius(nextBtn, LV_RADIUS_CIRCLE, LV_PART_MAIN);
|
||||
lv_obj_align_to(nextBtn, musicPlayerScreen->playPauseBtn.label, LV_ALIGN_OUT_RIGHT_MID, 25, 0);
|
||||
|
||||
lv_obj_t *nextBtnLabel = lv_label_create(nextBtn);
|
||||
lv_label_set_text_static(nextBtnLabel, LV_SYMBOL_RIGHT LV_SYMBOL_RIGHT);
|
||||
lv_obj_set_style_text_font(nextBtnLabel, &lv_font_montserrat_24, LV_PART_MAIN);
|
||||
lv_obj_center(nextBtnLabel);
|
||||
|
||||
lv_obj_set_user_data(nextBtn, (void *)MUSIC_CONTROL_NEXT);
|
||||
lv_obj_add_event_cb(nextBtn, &(music_player_button_click_event_cb), LV_EVENT_SHORT_CLICKED, musicPlayerScreen);
|
||||
lv_obj_add_event_cb(nextBtn, &(music_player_button_click_event_cb), LV_EVENT_LONG_PRESSED, musicPlayerScreen);
|
||||
|
||||
//Volume down button
|
||||
lv_obj_t *volumeDownBtn = lv_btn_create(musicPlayerScreen->display);
|
||||
lv_obj_set_size(volumeDownBtn, 47, 47);
|
||||
lv_obj_set_style_radius(volumeDownBtn, LV_RADIUS_CIRCLE, LV_PART_MAIN);
|
||||
lv_obj_align_to(volumeDownBtn, previousBtn, LV_ALIGN_BOTTOM_MID, 25, 50);
|
||||
|
||||
lv_obj_t *volumeDownBtnLabel = lv_label_create(volumeDownBtn);
|
||||
lv_label_set_text_static(volumeDownBtnLabel, LV_SYMBOL_VOLUME_MID);
|
||||
lv_obj_set_style_text_font(volumeDownBtnLabel, &lv_font_montserrat_24, LV_PART_MAIN);
|
||||
lv_obj_center(volumeDownBtnLabel);
|
||||
|
||||
lv_obj_set_user_data(volumeDownBtn, (void *)MUSIC_CONTROL_VOLUMEDOWN);
|
||||
lv_obj_add_event_cb(volumeDownBtn, &(music_player_button_click_event_cb), LV_EVENT_CLICKED, musicPlayerScreen);
|
||||
|
||||
//Volume up button
|
||||
lv_obj_t *volumeUpBtn = lv_btn_create(musicPlayerScreen->display);
|
||||
lv_obj_set_size(volumeUpBtn, 47, 47);
|
||||
lv_obj_set_style_radius(volumeUpBtn, LV_RADIUS_CIRCLE, LV_PART_MAIN);
|
||||
lv_obj_align_to(volumeUpBtn, nextBtn, LV_ALIGN_BOTTOM_MID, -25, 50);
|
||||
|
||||
lv_obj_t *volumeUpBtnLabel = lv_label_create(volumeUpBtn);
|
||||
lv_label_set_text_static(volumeUpBtnLabel, LV_SYMBOL_VOLUME_MAX);
|
||||
lv_obj_set_style_text_font(volumeUpBtnLabel, &lv_font_montserrat_24, LV_PART_MAIN);
|
||||
lv_obj_center(volumeUpBtnLabel);
|
||||
|
||||
lv_obj_set_user_data(volumeUpBtn, (void *)MUSIC_CONTROL_VOLUMEUP);
|
||||
lv_obj_add_event_cb(volumeUpBtn, &(music_player_button_click_event_cb), LV_EVENT_CLICKED, musicPlayerScreen);
|
||||
|
||||
//Track title
|
||||
if(musicPlayerScreen->titleLabel)
|
||||
{
|
||||
LV_LOG_ERROR("titleLabel should be NULL here !");
|
||||
lv_obj_del(musicPlayerScreen->titleLabel);
|
||||
musicPlayerScreen->titleLabel = NULL;
|
||||
}
|
||||
musicPlayerScreen->titleLabel = lv_label_create(musicPlayerScreen->display);
|
||||
lv_label_set_text_static(musicPlayerScreen->titleLabel, musicPlayerScreen->titleText);
|
||||
lv_obj_set_style_text_color(musicPlayerScreen->titleLabel, lv_color_white(), LV_PART_MAIN);
|
||||
lv_obj_set_style_text_font(musicPlayerScreen->titleLabel, &lv_font_montserrat_28, LV_PART_MAIN);
|
||||
lv_obj_set_width(musicPlayerScreen->titleLabel, 200);
|
||||
lv_obj_align(musicPlayerScreen->titleLabel, LV_ALIGN_TOP_MID, 0, 40);
|
||||
lv_obj_set_style_text_align(musicPlayerScreen->titleLabel, LV_TEXT_ALIGN_CENTER, LV_PART_MAIN);
|
||||
lv_label_set_long_mode(musicPlayerScreen->titleLabel, LV_LABEL_LONG_SCROLL_CIRCULAR);
|
||||
|
||||
//Track artist
|
||||
if(musicPlayerScreen->artistLabel)
|
||||
{
|
||||
LV_LOG_ERROR("artistLabel should be NULL here !");
|
||||
lv_obj_del(musicPlayerScreen->artistLabel);
|
||||
musicPlayerScreen->artistLabel = NULL;
|
||||
}
|
||||
musicPlayerScreen->artistLabel = lv_label_create(musicPlayerScreen->display);
|
||||
lv_label_set_text_static(musicPlayerScreen->artistLabel, musicPlayerScreen->artistText);
|
||||
lv_obj_set_style_text_color(musicPlayerScreen->artistLabel, lv_color_white(), LV_PART_MAIN);
|
||||
lv_obj_set_style_text_font(musicPlayerScreen->artistLabel, &lv_font_montserrat_16, LV_PART_MAIN);
|
||||
lv_obj_set_size(musicPlayerScreen->artistLabel, 150, 20);
|
||||
lv_obj_align_to(musicPlayerScreen->artistLabel, musicPlayerScreen->titleLabel, LV_ALIGN_BOTTOM_MID, 0, 25);
|
||||
lv_obj_set_style_text_align(musicPlayerScreen->artistLabel, LV_TEXT_ALIGN_CENTER, LV_PART_MAIN);
|
||||
lv_label_set_long_mode(musicPlayerScreen->artistLabel, LV_LABEL_LONG_SCROLL_CIRCULAR);
|
||||
|
||||
//Track playback labels
|
||||
if(musicPlayerScreen->durationTimeLabel.label)
|
||||
{
|
||||
LV_LOG_ERROR("durationTimeLabel should be NULL here !");
|
||||
lv_obj_del(musicPlayerScreen->durationTimeLabel.label);
|
||||
musicPlayerScreen->durationTimeLabel.label = NULL;
|
||||
}
|
||||
musicPlayerScreen->durationTimeLabel.label = lv_label_create(musicPlayerScreen->display);
|
||||
lv_obj_set_style_text_color(musicPlayerScreen->durationTimeLabel.label, lv_color_white(), LV_PART_MAIN);
|
||||
lv_obj_align(musicPlayerScreen->durationTimeLabel.label, LV_ALIGN_BOTTOM_RIGHT, -60, -20);
|
||||
|
||||
if(musicPlayerScreen->positionTimeLabel.label)
|
||||
{
|
||||
LV_LOG_ERROR("positionTimeLabel should be NULL here !");
|
||||
lv_obj_del(musicPlayerScreen->positionTimeLabel.label);
|
||||
musicPlayerScreen->positionTimeLabel.label = NULL;
|
||||
}
|
||||
musicPlayerScreen->positionTimeLabel.label = lv_label_create(musicPlayerScreen->display);
|
||||
lv_obj_set_style_text_color(musicPlayerScreen->positionTimeLabel.label, lv_color_white(), LV_PART_MAIN);
|
||||
lv_obj_align(musicPlayerScreen->positionTimeLabel.label, LV_ALIGN_BOTTOM_LEFT, 60, -20);
|
||||
|
||||
//Track playback cursor
|
||||
if(musicPlayerScreen->playbackArc)
|
||||
{
|
||||
LV_LOG_ERROR("playbackArc should be NULL here !");
|
||||
lv_obj_del(musicPlayerScreen->playbackArc);
|
||||
musicPlayerScreen->playbackArc = NULL;
|
||||
}
|
||||
musicPlayerScreen->playbackArc = lv_arc_create(musicPlayerScreen->display);
|
||||
lv_obj_remove_style(musicPlayerScreen->playbackArc, NULL, LV_PART_KNOB);
|
||||
lv_obj_clear_flag(musicPlayerScreen->playbackArc, LV_OBJ_FLAG_CLICKABLE);
|
||||
lv_obj_align(musicPlayerScreen->playbackArc, LV_ALIGN_CENTER, 0,0);
|
||||
lv_obj_set_size(musicPlayerScreen->playbackArc, 240, 240);
|
||||
lv_obj_set_style_arc_color(musicPlayerScreen->playbackArc, lv_palette_main(LV_PALETTE_LIME), LV_PART_INDICATOR);
|
||||
music_player_screen_set_music_duration(musicPlayerScreen, musicPlayerScreen->currentMusicDuration);
|
||||
music_player_screen_set_music_position(musicPlayerScreen, musicPlayerScreen->currentMusicPosition);
|
||||
|
||||
|
||||
//We register the event callback to handle gestures
|
||||
lv_obj_add_event_cb(musicPlayerScreen->display, &(gesture_event_cb), LV_EVENT_GESTURE, musicPlayerScreen);
|
||||
//We register the event callback to handle the cleanup
|
||||
|
@ -3,21 +3,65 @@
|
||||
|
||||
#include "lvgl.h"
|
||||
|
||||
typedef void (*MusicPlaybackCtrlCb_t)(void);
|
||||
typedef enum MusicPlaybackCtrlAction
|
||||
{
|
||||
MUSIC_CONTROL_PLAY = 0,
|
||||
MUSIC_CONTROL_PAUSE,
|
||||
MUSIC_CONTROL_PLAYPAUSE,
|
||||
MUSIC_CONTROL_NEXT,
|
||||
MUSIC_CONTROL_PREVIOUS,
|
||||
MUSIC_CONTROL_VOLUMEUP,
|
||||
MUSIC_CONTROL_VOLUMEDOWN,
|
||||
MUSIC_CONTROL_FORWARD,
|
||||
MUSIC_CONTROL_REWIND,
|
||||
} MusicPlaybackCtrlAction_e;
|
||||
|
||||
typedef void (*MusicPlaybackCtrlCb_t)(MusicPlaybackCtrlAction_e musicPlaybackCtrlAction);
|
||||
|
||||
typedef struct PlayerButton
|
||||
{
|
||||
lv_obj_t *button;
|
||||
lv_obj_t *label;
|
||||
char icon[4];
|
||||
} PlayerButton_t;
|
||||
|
||||
typedef struct TimeLabel
|
||||
{
|
||||
lv_obj_t *label;
|
||||
char text[9];
|
||||
} TimeLabel_t;
|
||||
|
||||
typedef struct MusicPlayerScreen
|
||||
{
|
||||
//Can be erased attributes
|
||||
lv_obj_t *display;
|
||||
PlayerButton_t playPauseBtn;
|
||||
lv_obj_t *playbackArc;
|
||||
lv_obj_t *titleLabel;
|
||||
lv_obj_t *artistLabel;
|
||||
TimeLabel_t positionTimeLabel, durationTimeLabel;
|
||||
//Should not be erased attributes
|
||||
MusicPlaybackCtrlCb_t musicPlaybackCtrlCb;
|
||||
MusicPlaybackCtrlAction_e currentPlayState;
|
||||
char titleText[60];
|
||||
char artistText[30];
|
||||
uint16_t currentMusicDuration; //The currently playing music's total duration in seconds.
|
||||
uint16_t currentMusicPosition; //The currently playing music's cursor position in seconds.
|
||||
} MusicPlayerScreen_t;
|
||||
|
||||
void music_player_screen_init(MusicPlayerScreen_t * const musicPlayerScreen);
|
||||
|
||||
void music_player_screen_register_music_playback_control_cb(MusicPlayerScreen_t * const musicPlayerScreen, MusicPlaybackCtrlCb_t musicPlaybackCtrlCb);
|
||||
|
||||
void music_player_screen_set_playing_music_title(MusicPlayerScreen_t * const musicPlayerScreen, const char *title);
|
||||
void music_player_screen_set_playing_music_title_and_artist(MusicPlayerScreen_t * const musicPlayerScreen, const char *title, const char *artist);
|
||||
|
||||
void music_player_screen_set_music_duration(MusicPlayerScreen_t * const musicPlayerScreen, uint16_t durationInSeconds);
|
||||
|
||||
void music_player_screen_set_music_position(MusicPlayerScreen_t * const musicPlayerScreen, uint16_t positionInSeconds);
|
||||
|
||||
void music_player_screen_set_music_playing_state(MusicPlayerScreen_t * const musicPlayerScreen, MusicPlaybackCtrlAction_e playingState);
|
||||
|
||||
bool music_player_screen_is_in_use(MusicPlayerScreen_t * const musicPlayerScreen);
|
||||
|
||||
void music_player_screen_create(MusicPlayerScreen_t * const musicPlayerScreen);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user