Skip to content

Commit 66d6a39

Browse files
committed
refactor the lvgl wasm api layer
1 parent d02d772 commit 66d6a39

File tree

27 files changed

+1706
-915
lines changed

27 files changed

+1706
-915
lines changed
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
#!/bin/bash
2+
3+
WGL_ROOT=$(cd "$(dirname "$0")/" && pwd)
4+
LVGL_REPO_DIR=${WGL_ROOT}/../../../deps/lvgl
5+
ls $LVGL_REPO_DIR
6+
7+
#if [ ! -d "${LVGL_REPO_DIR}" ]; then
8+
# echo "lvgl repo not exist, please git pull the lvgl v6.0 first"
9+
# exit 1
10+
#fi
11+
12+
cd ${WGL_ROOT}/wa-inc/lvgl
13+
pwd
14+
15+
if [ -d src ]; then
16+
rm -rf src
17+
echo "deleted the src folder from previous preparation."
18+
fi
19+
20+
mkdir src
21+
cd src
22+
23+
cp ${LVGL_REPO_DIR}/src/*.h ./
24+
25+
for folder in lv_core lv_draw lv_hal lv_objx lv_font lv_misc lv_themes
26+
do
27+
echo "Prepare fold $folder...done"
28+
mkdir $folder
29+
cp ${LVGL_REPO_DIR}/src/${folder}/*.h ./${folder}/
30+
done
31+
32+
cp -f ../lv_obj.h ./lv_core/lv_obj.h
33+
34+
echo "test the header files..."
35+
cd ..
36+
37+
gcc test.c -o test.out
38+
if [ $? != 0 ];then
39+
echo "failed to compile the test.c"
40+
exit 1
41+
else
42+
echo "okay"
43+
rm test.out
44+
fi
45+
46+
echo "lvgl header files for WASM application ready."

core/app-framework/wgl/app/src/wgl_btn.c

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@
33
* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
44
*/
55

6-
#include "wa-inc/wgl.h"
6+
#include "wa-inc/lvgl/lvgl.h"
77
#include "bh_platform.h"
88
#include "gui_api.h"
99

1010
#define ARGC sizeof(argv)/sizeof(uint32)
1111
#define CALL_BTN_NATIVE_FUNC(id) wasm_btn_native_call(id, argv, ARGC)
1212

13-
wgl_obj_t wgl_btn_create(wgl_obj_t par, wgl_obj_t copy)
13+
lv_obj_t * lv_btn_create(lv_obj_t * par, const lv_obj_t * copy);
1414
{
1515
uint32 argv[2] = {0};
1616

@@ -20,46 +20,46 @@ wgl_obj_t wgl_btn_create(wgl_obj_t par, wgl_obj_t copy)
2020
return (wgl_obj_t)argv[0];
2121
}
2222

23-
void wgl_btn_set_toggle(wgl_obj_t btn, bool tgl)
23+
void lv_btn_set_toggle(lv_obj_t * btn, bool tgl);
2424
{
2525
uint32 argv[2] = {0};
2626
argv[0] = (uint32)btn;
2727
argv[1] = tgl;
2828
CALL_BTN_NATIVE_FUNC(BTN_FUNC_ID_SET_TOGGLE);
2929
}
3030

31-
void wgl_btn_set_state(wgl_obj_t btn, wgl_btn_state_t state)
31+
void lv_btn_set_state(lv_obj_t * btn, lv_btn_state_t state);
3232
{
3333
uint32 argv[2] = {0};
3434
argv[0] = (uint32)btn;
3535
argv[1] = state;
3636
CALL_BTN_NATIVE_FUNC(BTN_FUNC_ID_SET_STATE);
3737
}
3838

39-
void wgl_btn_toggle(wgl_obj_t btn)
39+
void lv_btn_toggle(lv_obj_t * btn);
4040
{
4141
uint32 argv[1] = {0};
4242
argv[0] = (uint32)btn;
4343
CALL_BTN_NATIVE_FUNC(BTN_FUNC_ID_TOGGLE);
4444
}
4545

46-
void wgl_btn_set_ink_in_time(wgl_obj_t btn, uint16_t time)
46+
void lv_btn_set_ink_in_time(lv_obj_t * btn, uint16_t time);
4747
{
4848
uint32 argv[2] = {0};
4949
argv[0] = (uint32)btn;
5050
argv[1] = time;
5151
CALL_BTN_NATIVE_FUNC(BTN_FUNC_ID_SET_INK_IN_TIME);
5252
}
5353

54-
void wgl_btn_set_ink_wait_time(wgl_obj_t btn, uint16_t time)
54+
void lv_btn_set_ink_wait_time(lv_obj_t * btn, uint16_t time);
5555
{
5656
uint32 argv[2] = {0};
5757
argv[0] = (uint32)btn;
5858
argv[1] = time;
5959
CALL_BTN_NATIVE_FUNC(BTN_FUNC_ID_SET_INK_WAIT_TIME);
6060
}
6161

62-
void wgl_btn_set_ink_out_time(wgl_obj_t btn, uint16_t time)
62+
void lv_btn_set_ink_out_time(lv_obj_t * btn, uint16_t time);
6363
{
6464
uint32 argv[2] = {0};
6565
argv[0] = (uint32)btn;
@@ -73,39 +73,39 @@ void wgl_btn_set_ink_out_time(wgl_obj_t btn, uint16_t time)
7373
// //wasm_btn_set_style(btn, type, style);
7474
//}
7575
//
76-
wgl_btn_state_t wgl_btn_get_state(const wgl_obj_t btn)
76+
lv_btn_state_t lv_btn_get_state(const lv_obj_t * btn);
7777
{
7878
uint32 argv[1] = {0};
7979
argv[0] = (uint32)btn;
8080
CALL_BTN_NATIVE_FUNC(BTN_FUNC_ID_GET_STATE);
8181
return (wgl_btn_state_t)argv[0];
8282
}
8383

84-
bool wgl_btn_get_toggle(const wgl_obj_t btn)
84+
bool lv_btn_get_toggle(const lv_obj_t * btn);
8585
{
8686
uint32 argv[1] = {0};
8787
argv[0] = (uint32)btn;
8888
CALL_BTN_NATIVE_FUNC(BTN_FUNC_ID_GET_TOGGLE);
8989
return (bool)argv[0];
9090
}
9191

92-
uint16_t wgl_btn_get_ink_in_time(const wgl_obj_t btn)
92+
uint16_t lv_btn_get_ink_in_time(const lv_obj_t * btn);
9393
{
9494
uint32 argv[1] = {0};
9595
argv[0] = (uint32)btn;
9696
CALL_BTN_NATIVE_FUNC(BTN_FUNC_ID_GET_INK_IN_TIME);
9797
return (uint16_t)argv[0];
9898
}
9999

100-
uint16_t wgl_btn_get_ink_wait_time(const wgl_obj_t btn)
100+
uint16_t lv_btn_get_ink_wait_time(const lv_obj_t * btn);
101101
{
102102
uint32 argv[1] = {0};
103103
argv[0] = (uint32)btn;
104104
CALL_BTN_NATIVE_FUNC(BTN_FUNC_ID_GET_INK_WAIT_TIME);
105105
return (uint16_t)argv[0];
106106
}
107107

108-
uint16_t wgl_btn_get_ink_out_time(const wgl_obj_t btn)
108+
uint16_t lv_btn_get_ink_out_time(const lv_obj_t * btn);
109109
{
110110
uint32 argv[1] = {0};
111111
argv[0] = (uint32)btn;

core/app-framework/wgl/app/src/wgl_cb.c

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,16 @@
33
* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
44
*/
55

6-
#include "wa-inc/wgl.h"
6+
7+
#include "wa-inc/lvgl/lvgl.h"
78
#include "gui_api.h"
89

910
#include <string.h>
1011

1112
#define ARGC sizeof(argv)/sizeof(uint32)
1213
#define CALL_CB_NATIVE_FUNC(id) wasm_cb_native_call(id, argv, ARGC)
1314

14-
wgl_obj_t wgl_cb_create(wgl_obj_t par, const wgl_obj_t copy)
15+
lv_obj_t * lv_cb_create(lv_obj_t * par, const lv_obj_t * copy);
1516
{
1617
uint32 argv[2] = {0};
1718

@@ -21,7 +22,7 @@ wgl_obj_t wgl_cb_create(wgl_obj_t par, const wgl_obj_t copy)
2122
return (wgl_obj_t)argv[0];
2223
}
2324

24-
void wgl_cb_set_text(wgl_obj_t cb, const char * txt)
25+
void lv_cb_set_text(lv_obj_t * cb, const char * txt);
2526
{
2627
uint32 argv[3] = {0};
2728
argv[0] = (uint32)cb;
@@ -30,7 +31,7 @@ void wgl_cb_set_text(wgl_obj_t cb, const char * txt)
3031
CALL_CB_NATIVE_FUNC(CB_FUNC_ID_SET_TEXT);
3132
}
3233

33-
void wgl_cb_set_static_text(wgl_obj_t cb, const char * txt)
34+
void lv_cb_set_static_text(lv_obj_t * cb, const char * txt);
3435
{
3536
uint32 argv[3] = {0};
3637
argv[0] = (uint32)cb;
@@ -45,15 +46,15 @@ void wgl_cb_set_static_text(wgl_obj_t cb, const char * txt)
4546
//}
4647
//
4748

48-
unsigned int wgl_cb_get_text_length(wgl_obj_t cb)
49+
static unsigned int wgl_cb_get_text_length(wgl_obj_t cb)
4950
{
5051
uint32 argv[1] = {0};
5152
argv[0] = (uint32)cb;
5253
CALL_CB_NATIVE_FUNC(CB_FUNC_ID_GET_TEXT_LENGTH);
5354
return argv[0];
5455
}
5556

56-
char *wgl_cb_get_text(wgl_obj_t cb, char *buffer, int buffer_len)
57+
static char *wgl_cb_get_text(wgl_obj_t cb, char *buffer, int buffer_len)
5758
{
5859
uint32 argv[3] = {0};
5960
argv[0] = (uint32)cb;
@@ -63,6 +64,14 @@ char *wgl_cb_get_text(wgl_obj_t cb, char *buffer, int buffer_len)
6364
return (char *)argv[0];
6465
}
6566

67+
// TODO: need to use a global data buffer for the returned text
68+
const char * lv_cb_get_text(const lv_obj_t * cb)
69+
{
70+
71+
return NULL;
72+
}
73+
74+
6675
//const wgl_style_t * wgl_cb_get_style(const wgl_obj_t cb, wgl_cb_style_t type)
6776
//{
6877
// //TODO

0 commit comments

Comments
 (0)