This commit is contained in:
huxi
2025-12-03 11:12:34 +08:00
parent c23ae4f24c
commit bc195654bf
8163 changed files with 3799544 additions and 92 deletions
@@ -0,0 +1,37 @@
#ifndef _JL_CODE_H
#define _JL_CODE_H
#define JL_CODE_MODE_EAN_13 0 // 仅能编码数字,且长度固定为12
#define JL_CODE_MODE_CODE_39 1 // 仅能编码数字、大写字母、“+- /%$.”。输出长度为(n+2)*13
#define JL_CODE_MODE_CODE_128 2 // ASCII都能编码,输出长度为(n+3)*11+2
#define JL_CODE_MODE_QR_CODE 3 // ASCII都能编码
enum code_result {
success = 1,
Input_mode_err,
EAN_13_input_err,
EAN_13_output_err,
CODE_39_input_err,
CODE_39_input_data_err,
CODE_39_output_err,
CODE_128_input_err,
CODE_128_output_err,
QR_CODE_input_err,
QR_CODE_check_ecc_err,
QR_CODE_version_err,
QR_CODE_add_ecc_err,
};
typedef struct {
int l_size;
} jl_code_param_t;
void jl_code_init(int code128_mode, unsigned char qr_version, unsigned char qr_max_version, unsigned char qr_ecc_level, int qr_code_max_input_len_, int qr_buf_size, int img_w);
int jl_code_process(unsigned char mode_t, char *src, int length, int *out_len, int *line_size);
void jl_code_set_info(jl_code_param_t *jl_code_param_);
void jl_code_get_data(int len, int row, unsigned char *outdata);
unsigned char *get_qrcode_rawdata();
void jl_code_deinit();
int ui_qrcode_init();
int ui_qrcode_uninit();
#endif
@@ -0,0 +1,88 @@
#ifndef __RES_CONFIG_H__
#define __RES_CONFIG_H__
#include "app_config.h"
#if TCFG_NANDFLASH_UI_FAT_ENABLE &&(!TCFG_VIRFAT_INSERT_FLASH_ENABLE)
#define EXTERN_PATH "storage/"TCFG_NANDFLASH_UI_FAT_LOGO"/C/" // 用于存储JL sidebar font
#else
#define EXTERN_PATH "storage/virfat_flash/C/"
#endif
#define INTERN_PATH "mnt/sdfile/res/"
#define RES_PATH EXTERN_PATH
#define UPGRADE_PATH INTERN_PATH"ui_upgrade/"
#if TCFG_NANDFLASH_DEV_ENABLE&&(!TCFG_SDFILE_INSERT_FLASH_ENABLE)
#if TCFG_NANDFLASH_UI_FAT_ENABLE
#define MODE_PATH "storage/"TCFG_NANDFLASH_UI_FAT_LOGO"/C/" // 用于存储JL sidebar font
#else
#define MODE_PATH "storage/virfat_flash/C/" // 用于存储JL sidebar font
#endif
#else
#define MODE_PATH "storage/res_nor_mode/C/" // 用于存储JL sidebar font
#endif
#define JL_PATH MODE_PATH"JL/"
#define SIDEBAR_PATH MODE_PATH"sidebar/"
#define FONT_PATH MODE_PATH"font/"
#define UI_STY_CHECK_PATH \
MODE_PATH"JL/JL.sty", \
RES_PATH"watch/watch.sty",\
RES_PATH"watch1/watch1.sty",\
RES_PATH"watch2/watch2.sty",\
RES_PATH"watch3/watch3.sty",\
RES_PATH"watch4/watch4.sty",\
RES_PATH"watch5/watch5.sty",
#define UI_RES_CHECK_PATH \
MODE_PATH"JL/JL.res", \
RES_PATH"watch/watch.res",\
RES_PATH"watch1/watch1.res",\
RES_PATH"watch2/watch2.res",\
RES_PATH"watch3/watch3.res",\
RES_PATH"watch4/watch4.res",\
RES_PATH"watch5/watch5.res",\
#define UI_STR_CHECK_PATH \
MODE_PATH"JL/JL.str", \
RES_PATH"watch/watch.str", \
RES_PATH"watch1/watch1.str",\
RES_PATH"watch2/watch2.str",\
RES_PATH"watch3/watch3.str",\
RES_PATH"watch4/watch4.str",\
RES_PATH"watch5/watch5.str",
#define UI_STY_WATCH_PATH \
RES_PATH"watch/watch.sty",\
RES_PATH"watch1/watch1.sty",\
RES_PATH"watch2/watch2.sty",\
RES_PATH"watch3/watch3.sty",\
RES_PATH"watch4/watch4.sty",\
RES_PATH"watch5/watch5.sty",
#define UI_USED_DOUBLE_BUFFER 1//使用双buf推屏
#define UI_WATCH_RES_ENABLE 1//表盘功能
#define UI_UPGRADE_RES_ENABLE 1//升级界面功能
#ifdef CONFIG_BOARD_JL707N_CSC_DEMO //仓
#define WATCH_RES_NAME "WATCH"
#define WATCH_RES_NAME_SMALL "watch"
#define BGP_RES_NAME "VIE"
#define BGP_RES_NAME_SMALL "vie"
#else//手表
#define WATCH_RES_NAME "WATCH"
#define WATCH_RES_NAME_SMALL "watch"
#define BGP_RES_NAME "BGP_W"
#define BGP_RES_NAME_SMALL "bgp_w"
#define AVI_RES_NAME "AVI"
#define AVI_RES_NAME_SMALL "avi"
#endif
#endif
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,543 @@
//generated by ResBuilder
#ifndef _RESULT_STR_INDEX_H_
#define _RESULT_STR_INDEX_H_
////StrResID Define Table////
#define M001 1
#define M002 2
#define M003 3
#define M004 4
#define M005 5
#define M006 6
#define M007 7
#define M008 8
#define M009 9
#define M010 10
#define M011 11
#define M012 12
#define M013 13
#define M014 14
#define M015 15
#define M016 16
#define M017 17
#define M018 18
#define M019 19
#define M020 20
#define M021 21
#define M022 22
#define M023 23
#define M024 24
#define M025 25
#define M026 26
#define M027 27
#define M030 28
#define M031 29
#define M032 30
#define M033 31
#define M034 32
#define M035 33
#define M036 34
#define M037 35
#define M038 36
#define M039 37
#define M040 38
#define M041 39
#define M042 40
#define M043 41
#define M044 42
#define M045 43
#define M046 44
#define M047 45
#define M048 46
#define M049 47
#define M050 48
#define M051 49
#define M052 50
#define M053 51
#define M054 52
#define M055 53
#define M056 54
#define M057 55
#define M058 56
#define M059 57
#define M060 58
#define M061 59
#define M062 60
#define M063 61
#define M064 62
#define M065 63
#define M066 64
#define M067 65
#define M077 66
#define M078 67
#define M079 68
#define M080 69
#define M081 70
#define M082 71
#define M083 72
#define M085 73
#define M086 74
#define M087 75
#define M088 76
#define M089 77
#define M090 78
#define M091 79
#define M092 80
#define M093 81
#define M094 82
#define M095 83
#define M096 84
#define M097 85
#define M098 86
#define M099 87
#define M100 88
#define M101 89
#define M102 90
#define M103 91
#define M104 92
#define M105 93
#define M107 94
#define M108 95
#define M109 96
#define M110 97
#define M111 98
#define M112 99
#define M113 100
#define M114 101
#define M115 102
#define M116 103
#define M117 104
#define M118 105
#define M119 106
#define M120 107
#define M121 108
#define M122 109
#define M123 110
#define M124 111
#define M125 112
#define M126 113
#define M127 114
#define M128 115
#define M129 116
#define M131 117
#define M133 118
#define M134 119
#define M135 120
#define M136 121
#define M137 122
#define M138 123
#define M139 124
#define M140 125
#define M141 126
#define M142 127
#define M143 128
#define M144 129
#define M145 130
#define M146 131
#define M147 132
#define M148 133
#define M149 134
#define M150 135
#define M151 136
#define M152 137
#define M153 138
#define M154 139
#define M155 140
#define M157 141
#define M158 142
#define M159 143
#define M160 144
#define M161 145
#define M162 146
#define M163 147
#define M164 148
#define M165 149
#define M166 150
#define M167 151
#define M168 152
#define M169 153
#define M170 154
#define M171 155
#define M172 156
#define M173 157
#define M174 158
#define M175 159
#define M176 160
#define M177 161
#define M178 162
#define M179 163
#define M180 164
#define M181 165
#define M182 166
#define M183 167
#define M184 168
#define M185 169
#define M186 170
#define M187 171
#define M188 172
#define M189 173
#define M190 174
#define M191 175
#define M192 176
#define M193 177
#define M194 178
#define M195 179
#define M196 180
#define M197 181
#define M198 182
#define M199 183
#define M200 184
#define M201 185
#define M202 186
#define M203 187
#define M204 188
#define M205 189
#define M206 190
#define M207 191
#define M208 192
#define M209 193
#define M210 194
#define M211 195
#define M212 196
#define M213 197
#define M214 198
#define M215 199
#define M219 200
#define M220 201
#define M221 202
#define M223 203
#define M225 204
#define M226 205
#define M227 206
#define M228 207
#define M229 208
#define M230 209
#define M231 210
#define M232 211
#define M233 212
#define M234 213
#define M235 214
#define M239 215
#define M240 216
#define M241 217
#define M242 218
#define M243 219
#define M244 220
#define M245 221
#define M246 222
#define M247 223
#define M248 224
#define M249 225
#define M250 226
#define M251 227
#define M252 228
#define M253 229
#define M254 230
#define M255 231
#define M256 232
#define M257 233
#define M258 234
#define M259 235
#define M260 236
#define M261 237
#define M262 238
#define M263 239
#define M264 240
#define M265 241
#define M266 242
#define M267 243
#define M268 244
#define M269 245
#define M270 246
#define M271 247
#define M272 248
#define M273 249
#define M274 250
#define M275 251
#define M276 252
#define M277 253
#define M278 254
#define M279 255
#define M280 256
#define M281 257
#define M282 258
#define M283 259
#define M284 260
#define M285 261
#define M286 262
#define M287 263
#define M288 264
#define M289 265
#define M290 266
#define M291 267
#define M292 268
#define M293 269
#define M294 270
#define M295 271
#define M296 272
#define M297 273
#define M298 274
#define M299 275
#define M300 276
#define M301 277
#define M302 278
#define M303 279
#define M304 280
#define M305 281
#define M306 282
#define M308 283
#define M309 284
#define M310 285
#define M311 286
#define M312 287
#define M313 288
#define M314 289
#define M315 290
#define M316 291
#define M317 292
#define M319 293
#define M321 294
#define M322 295
#define M323 296
#define M324 297
#define M326 298
#define M327 299
#define M328 300
#define M329 301
#define M330 302
#define M331 303
#define M332 304
#define M333 305
#define M334 306
#define M335 307
#define M336 308
#define M337 309
#define M338 310
#define M339 311
#define M340 312
#define M342 313
#define M343 314
#define M344 315
#define M345 316
#define M346 317
#define M347 318
#define M348 319
#define M349 320
#define M350 321
#define M351 322
#define M352 323
#define M353 324
#define M354 325
#define M355 326
#define M356 327
#define M357 328
#define M358 329
#define M360 330
#define M362 331
#define M363 332
#define M364 333
#define M365 334
#define M366 335
#define M367 336
#define M369 337
#define M370 338
#define M371 339
#define M372 340
#define M378 341
#define M379 342
#define M380 343
#define M381 344
#define M382 345
#define M383 346
#define M384 347
#define M385 348
#define M387 349
#define M388 350
#define M389 351
#define M390 352
#define M391 353
#define M392 354
#define M393 355
#define M394 356
#define M395 357
#define M396 358
#define M397 359
#define M398 360
#define M399 361
#define M400 362
#define M401 363
#define M402 364
#define M403 365
#define M404 366
#define M405 367
#define M406 368
#define M407 369
#define M408 370
#define M409 371
#define M410 372
#define M411 373
#define M412 374
#define M413 375
#define M414 376
#define M415 377
#define M416 378
#define M417 379
#define M418 380
#define M429 381
#define M420 382
#define M421 383
#define M422 384
#define M423 385
#define M424 386
#define M425 387
#define M426 388
#define M427 389
#define M428 390
#define M430 391
#define M431 392
#define M432 393
#define M433 394
#define M434 395
#define M435 396
#define M436 397
#define M437 398
#define M438 399
#define M439 400
#define M440 401
#define M441 402
#define M442 403
#define M443 404
#define M444 405
#define M445 406
#define M446 407
#define M447 408
#define M454 409
#define M455 410
#define M456 411
#define M457 412
#define M458 413
#define M459 414
#define M461 415
#define M462 416
#define M463 417
#define M464 418
#define M465 419
#define M466 420
#define M467 421
#define M468 422
#define M469 423
#define M470 424
#define M471 425
#define M472 426
#define M473 427
#define M474 428
#define M475 429
#define M476 430
#define M477 431
#define M478 432
#define M479 433
#define M480 434
#define M481 435
#define M482 436
#define M484 437
#define M485 438
#define M486 439
#define M487 440
#define M488 441
#define M489 442
#define M490 443
#define M491 444
#define M492 445
#define M493 446
#define M494 447
#define M495 448
#define M507 449
#define M508 450
#define M509 451
#define M510 452
#define M511 453
#define M512 454
#define M513 455
#define M514 456
#define M515 457
#define M516 458
#define M517 459
#define M518 460
#define M519 461
#define M520 462
#define M521 463
#define M522 464
#define M523 465
#define M524 466
#define M525 467
#define M526 468
#define M527 469
#define M528 470
#define M529 471
#define M530 472
#define M531 473
#define M532 474
#define M533 475
#define M534 476
#define M535 477
#define M536 478
#define M537 479
#define M538 480
#define M539 481
#define M542 482
#define M543 483
#define M547 484
#define M548 485
#define M549 486
#define M551 487
#define M552 488
#define M554 489
#define M555 490
#define M556 491
#define M557 492
#define M558 493
#define M559 494
#define M563 495
#define M564 496
#define M565 497
#define M566 498
#define M567 499
#define M568 500
#define M569 501
#define M570 502
#define M571 503
#define M572 504
#define M573 505
#define M574 506
#define M575 507
#define M576 508
#define M577 509
#define M578 510
#define M579 511
#define M580 512
#define M581 513
#define M582 514
#define M583 515
#define M584 516
#define M585 517
#define M586 518
#define M587 519
#define M588 520
#define M589 521
#define M590 522
#define M591 523
#define M592 524
#define M593 525
#define M594 526
#define M595 527
#define M596 528
#define M597 529
#define M598 530
#define M599 531
#define M600 532
#define M601 533
#define M602 534
#define M603 535
#define M604 536
#endif
@@ -0,0 +1,28 @@
#ifndef UI_TOOL_ENAME_DIAL
#define UI_TOOL_ENAME_DIAL
#define DIAL_BASEFORM 0X4002000
#define DIAL_BASEFORM_1 0X4021000
#define DIAL_BASEFORM_2 0X4001000
#define DIAL_MESSAGE_LAYOUT 0X4020C00
#define DIAL_NEWFRAME_10 0X4006C02
#define DIAL_NEWFRAME_2 0X4006400
#define DIAL_NEWFRAME_3 0X4006800
#define DIAL_NEWFRAME_4 0X4006C00
#define DIAL_NEWFRAME_5 0X4006401
#define DIAL_NEWFRAME_6 0X4006801
#define DIAL_NEWFRAME_7 0X4006C01
#define DIAL_NEWFRAME_8 0X4006402
#define DIAL_NEWFRAME_9 0X4006802
#define DIAL_PAGE_0 0X4000800
#define DIAL_PAGE_1 0X4020801
#define DIAL_TIME 0X4002800
#define DIAL_UI_ROTATE 0X0
#define DIAL_UI_VERSION 0X100B580E
#define DIAL_WATCH 0X4006000
#define DIAL_WATCH_LAYOUT 0X4000C00
#define STYLE_DIAL_ID(x) DIAL_##x
#endif //UI_TOOL_ENAME_DIAL_H
@@ -0,0 +1,27 @@
#ifndef UI_TOOL_ENAME_DIAL
#define UI_TOOL_ENAME_DIAL
#define DIAL_BASEFORM 0X4002000
#define DIAL_BASEFORM_1 0X4021000
#define DIAL_BASEFORM_2 0X4001000
#define DIAL_BASEFORM_3 0X4002800
#define DIAL_BASEFORM_4 0X4002001
#define DIAL_BASEFORM_5 0X4003C00
#define DIAL_BASEFORM_6 0X4002002
#define DIAL_BASEFORM_7 0X4003C01
#define DIAL_BASEFORM_8 0X4002003
#define DIAL_MESSAGE_LAYOUT 0X4020C00
#define DIAL_NEWFRAME_2 0X4006400
#define DIAL_NEWFRAME_3 0X4006800
#define DIAL_NEWFRAME_4 0X4006C00
#define DIAL_PAGE_0 0X4000800
#define DIAL_PAGE_1 0X4020801
#define DIAL_UI_ROTATE 0X0
#define DIAL_UI_VERSION 0X4090009
#define DIAL_WATCH 0X4006000
#define DIAL_WATCH_LAYOUT 0X4000C00
#define STYLE_DIAL_ID(x) DIAL_##x
#endif //UI_TOOL_ENAME_DIAL_H
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,307 @@
#ifndef UI_TOOL_ENAME
#define UI_TOOL_ENAME
#define ALARM_CLOCK_CANCEL_BUTTON_PIC 0X62004
#define ALARM_CLOCK_LAYER 0X61000
#define ALARM_CLOCK_LAYOUT 0X60C00
#define ALARM_CLOCK_NEXT_BUTTON_PIC 0X62002
#define ALARM_CLOCK_PREV_BUTTON_PIC 0X62001
#define ALARM_CLOCK_RING_LAYOUT 0XA0C00
#define ALARM_CLOCK_RING_REPEAT_PIC 0XA2001
#define ALARM_CLOCK_RING_STOP_PIC 0XA2002
#define ALARM_CLOCK_RUNNING_LAYOUT 0X60C02
#define ALARM_CLOCK_RUNNING_TIME 0X62800
#define ALARM_CLOCK_SETTING_BUTTON_PIC 0X62000
#define ALARM_CLOCK_SETTING_TIME_PIC 0X62003
#define ALARM_CLOCK_SET_LAYOUT 0X60C01
#define BASEFORM 0X41000
#define BASEFORM_1 0X40C00
#define BASEFORM_10 0X180C02
#define BASEFORM_11 0X243000
#define BASEFORM_12 0X180C03
#define BASEFORM_1252 0X1C2002
#define BASEFORM_1277 0X260C04
#define BASEFORM_1279 0X260C05
#define BASEFORM_1281 0X260C06
#define BASEFORM_13 0XA3001
#define BASEFORM_1318 0X260C07
#define BASEFORM_1354 0X260C08
#define BASEFORM_14 0X180C04
#define BASEFORM_1401 0X260C09
#define BASEFORM_1402 0X261000
#define BASEFORM_1409 0X262000
#define BASEFORM_1423 0X260C0A
#define BASEFORM_1424 0X260C0B
#define BASEFORM_1425 0X260C0C
#define BASEFORM_1426 0X260C0D
#define BASEFORM_1427 0X260C0E
#define BASEFORM_1428 0X260C0F
#define BASEFORM_1441 0X262002
#define BASEFORM_1442 0X262003
#define BASEFORM_1443 0X260C11
#define BASEFORM_1445 0X260C12
#define BASEFORM_1447 0X260C13
#define BASEFORM_1449 0X260C14
#define BASEFORM_1451 0X260C15
#define BASEFORM_1453 0X260C16
#define BASEFORM_1455 0X260C17
#define BASEFORM_1457 0X260C18
#define BASEFORM_1459 0X260C19
#define BASEFORM_1461 0X260C1A
#define BASEFORM_1463 0X260C1B
#define BASEFORM_1465 0X260C1C
#define BASEFORM_1467 0X262006
#define BASEFORM_1468 0X262007
#define BASEFORM_15 0X183001
#define BASEFORM_16 0X183002
#define BASEFORM_17 0X183003
#define BASEFORM_18 0X183004
#define BASEFORM_19 0X180C08
#define BASEFORM_2 0XE2000
#define BASEFORM_20 0X180C09
#define BASEFORM_21 0X100C00
#define BASEFORM_22 0X180C0A
#define BASEFORM_23 0X180C0B
#define BASEFORM_24 0X183006
#define BASEFORM_240 0X101000
#define BASEFORM_25 0X183007
#define BASEFORM_3 0XE1000
#define BASEFORM_30 0XA2000
#define BASEFORM_41 0X2A3001
#define BASEFORM_43 0X242000
#define BASEFORM_46 0XE5400
#define BASEFORM_488 0X2A1000
#define BASEFORM_497 0X2A3000
#define BASEFORM_5 0X183000
#define BASEFORM_534 0X222000
#define BASEFORM_545 0X83000
#define BASEFORM_546 0X82005
#define BASEFORM_547 0X83002
#define BASEFORM_56 0X22000
#define BASEFORM_609 0XA1000
#define BASEFORM_690 0X2A2000
#define BASEFORM_7 0X223003
#define BASEFORM_776 0X1C0C02
#define BASEFORM_8 0X180C01
#define BASEFORM_9 0XA3000
#define BATCHARGE_LAYOUT 0XE0C00
#define BATCHARGE_PERSENT_VALUE 0XE3C00
#define BRIGHTNESS_ADD_BUTTON 0X242002
#define BRIGHTNESS_PIC 0X242003
#define BRIGHTNESS_SUBSTRACT_BUTTON 0X242001
#define BRIGHTNESS_VALUE_LAYER 0X241000
#define BRIGHTNESS_VALUE_LAYOUT 0X240C00
#define CALENDAR_DATA 0X260C01
#define CHARGE_PROG 0XE5000
#define CLOCK_TIME 0X260C02
#define DAY_NUM_FIR 0X263C09
#define DAY_NUM_FOU 0X263C0C
#define DAY_NUM_SEC 0X263C0A
#define DAY_NUM_THI 0X263C0B
#define DENOISE_ADAPTIVE_PIC 0X142003
#define DENOISE_LAYER 0X141000
#define DENOISE_LAYOUT 0X140C00
#define DENOISE_OFF_PIC 0X142000
#define DENOISE_ON_PIC 0X142001
#define DENOISE_TITLE_TEXT 0X143000
#define DENOISE_TRANSPARENCY_PIC 0X142002
#define DIAL_LAYER 0X1000
#define DIAL_LAYOUT 0XC00
#define EQUALIZER_DISPLAY_TEXT 0X163000
#define EQUALIZER_LAYER 0X161000
#define EQUALIZER_LAYOUT 0X160C00
#define EQUALIZER_NEXT_PIC 0X162001
#define EQUALIZER_PRE_PIC 0X162000
#define EQUALIZER_TEXT 0X163001
#define FINDING 0X220C02
#define FIND_4 0X222001
#define FIND_5 0X222002
#define FIND_6 0X222003
#define FIND_7 0X222004
#define FIND_8 0X223001
#define FIND_9 0X223002
#define FIND_EARPHONE_LAYER 0X221000
#define FIND_EARPHON_LAY 0X220C00
#define FIND_EARPHON_LAYOUT 0X220C01
#define FIND_EAR_CTRL 0X220C03
#define HOUR_NUM_FIR 0X263C0D
#define HOUR_NUM_FOU 0X263C10
#define HOUR_NUM_SEC 0X263C0E
#define HOUR_NUM_THI 0X263C0F
#define H_M_S 0X262800
#define LANGUAGE_SELECT_LAYER 0X201000
#define LANGUAGE_SELECT_LAYOUT 0X200C00
#define LANGUAGE_TEXT 0X203000
#define LANGUAGE_TITLE_TEXT 0X203001
#define LOCKSELECT_LAST 0X1C2000
#define LOCKSELECT_LAYER 0X1C1000
#define LOCKSELECT_LAYOUT 0X1C0C00
#define LOCKSELECT_NEXT 0X1C2001
#define LOCKSMALL 0X1C0C01
#define MIN_NUM_FIR 0X263C11
#define MIN_NUM_FOU 0X263C14
#define MIN_NUM_SEC 0X263C12
#define MIN_NUM_THI 0X263C13
#define MON_NUM_FIR 0X263C05
#define MON_NUM_FOU 0X263C08
#define MON_NUM_SEC 0X263C06
#define MON_NUM_THI 0X263C07
#define MUSIC_CHANGE_BUTTON 0X182003
#define MUSIC_CONTROL_LAYOUT 0X180C05
#define MUSIC_LAYER 0X181000
#define MUSIC_LAYOUT 0X180C06
#define MUSIC_LIST 0X181400
#define MUSIC_LIST_BUTTON 0X182004
#define MUSIC_LOCAL_LAYOUT 0X180C00
#define MUSIC_MODE_LAYOUT 0X180C07
#define MUSIC_MODE_LIST 0X181401
#define MUSIC_NEXT_PIC 0X182002
#define MUSIC_PLAY_PIC 0X182001
#define MUSIC_PRE_PIC 0X182000
#define MUSIC_TITLE_TEXT 0X183005
#define NEWFRAME_2 0X63000
#define NEWFRAME_3 0X63001
#define NEWFRAME_CLOCK 0X262001
#define NOTICE_DETAIL_CLEAR_PIC 0X2A2009
#define NOTICE_DETAIL_CONTEXT_TEXT 0X2A3009
#define NOTICE_DETAIL_LAYOUT 0X2A0C06
#define NOTICE_DETAIL_TITLE_TEXT 0X2A3008
#define NOTICE_DETAIL_TYPE_PIC 0X2A2008
#define NOTICE_DIALOG 0X2A0C07
#define NOTICE_DIALOG_BG 0X2A200A
#define NOTICE_DIALOG_CONTENT 0X2A300B
#define NOTICE_DIALOG_PIC 0X2A200B
#define NOTICE_DIALOG_TIME 0X2A2803
#define NOTICE_DIALOG_TITLE 0X2A300A
#define NOTICE_LAYOUT 0X2A0C00
#define NOTICE_LIST 0X2A1400
#define NOTICE_LIST_CLEAR_ALL_PIC 0X2A2001
#define NOTICE_LIST_ITEM0 0X2A0C03
#define NOTICE_LIST_ITEM1 0X2A0C04
#define NOTICE_LIST_ITEM2 0X2A0C05
#define NOTICE_LIST_ITEM_BG0 0X2A2002
#define NOTICE_LIST_ITEM_BG1 0X2A2004
#define NOTICE_LIST_ITEM_BG2 0X2A2006
#define NOTICE_LIST_ITEM_CONTENT_TEXT0 0X2A3003
#define NOTICE_LIST_ITEM_CONTENT_TEXT1 0X2A3005
#define NOTICE_LIST_ITEM_CONTENT_TEXT2 0X2A3007
#define NOTICE_LIST_ITEM_TIME0 0X2A2800
#define NOTICE_LIST_ITEM_TIME1 0X2A2801
#define NOTICE_LIST_ITEM_TIME2 0X2A2802
#define NOTICE_LIST_ITEM_TYPE_PIC0 0X2A2003
#define NOTICE_LIST_ITEM_TYPE_PIC1 0X2A2005
#define NOTICE_LIST_ITEM_TYPE_PIC2 0X2A2007
#define NOTICE_LIST_ITEM_TYPE_TEXT0 0X2A3002
#define NOTICE_LIST_ITEM_TYPE_TEXT1 0X2A3004
#define NOTICE_LIST_ITEM_TYPE_TEXT2 0X2A3006
#define NOTICE_LIST_LAYOUT 0X2A0C02
#define NOTICE_NO_MSG_LAYOUT 0X2A0C01
#define PAGE_0 0X800
#define PAGE_1 0X20801
#define PAGE_10 0X14080A
#define PAGE_11 0X16080B
#define PAGE_12 0X18080C
#define PAGE_13 0X1A080D
#define PAGE_14 0X1C080E
#define PAGE_15 0X1E080F
#define PAGE_16 0X200810
#define PAGE_17 0X220811
#define PAGE_18 0X240812
#define PAGE_19 0X260813
#define PAGE_2 0X40802
#define PAGE_20 0X280814
#define PAGE_21 0X2A0815
#define PAGE_3 0X60803
#define PAGE_4 0X80804
#define PAGE_5 0XA0805
#define PAGE_6 0XC0806
#define PAGE_7 0XE0807
#define PAGE_8 0X100808
#define PAGE_9 0X120809
#define PHONE_10 0X82003
#define PHONE_12 0X82004
#define PHONE_2 0X82000
#define PHONE_3 0X82001
#define PHONE_4 0X83001
#define PHONE_6 0X82002
#define PHONE_9 0X82800
#define PHONE_CALL_STATE_LAYOUT 0X80C00
#define PHONE_CALL_STATUS_ACTIVE_LAYOUT 0X80C02
#define PHONE_CALL_STATUS_INCOMING_LAYOUT 0X80C01
#define PHONE_CALL_STATUS_LAYER 0X81000
#define PHONE_CALL_STATUS_OUTGOING_LAYOUT 0X80C03
#define PHOTOGRAGH_LAYER 0XC1000
#define PHOTOGRAPH_CLICK_PIC 0XC2000
#define PHOTOGRAPH_LAYOUT 0XC0C00
#define POWER_ON_LAYER 0X21000
#define POWER_ON_LAYOUT 0X20C00
#define REBOOT_PIC 0X282001
#define REBOOT_TEXT 0X283001
#define RESET_2 0X283003
#define RESET_PIC 0X282002
#define RESET_TEXT 0X283002
#define SD_MUSIC_EAR_PLAY 0X183009
#define SD_MUSIC_LOCAL_PLAY 0X183008
#define SEC_NUM_FIR 0X263C15
#define SEC_NUM_FOU 0X263C18
#define SEC_NUM_SEC 0X263C16
#define SEC_NUM_THI 0X263C17
#define SETTING_LANGUAGE_LEFT_PIC 0X202000
#define SETTING_LANGUAGE_RIGHT_PIC 0X202001
#define SET_TIMER_DAY_VLIST 0X261402
#define SET_TIMER_HOUR_VLIST 0X261403
#define SET_TIMER_MIN_VLIST 0X261404
#define SET_TIMER_MOUTH_VLIST 0X261401
#define SET_TIMER_SEC_VLIST 0X261405
#define SET_TIMER_YEAR_VLIST 0X261400
#define SET_TIME_MAIN 0X260C00
#define SHIPPING_MODE_PIC 0X282003
#define SHUTDOWN_AND_RESET_LAYER 0X281000
#define SHUTDOWN_AND_RESET_LAYOUT 0X280C00
#define SHUTDOWN_PIC 0X282000
#define SHUTDOWN_TEXT 0X283000
#define TAKE_2 0X223000
#define TIKTOK_LAYER 0X1E1000
#define TIKTOK_LAYOUT 0X1E0C00
#define TIKTOK_NEXT_PIC 0X1E2000
#define TIKTOK_PIC 0X1E2002
#define TIKTOK_PREVIOUS_PIC 0X1E2001
#define TIMER_1 0X260C03
#define TIMER_2 0X260C10
#define TIMER_29 0X262004
#define TIMER_30 0X262005
#define TIMER_31 0X262008
#define TIMER_32 0X262009
#define UI_ROTATE 0X0
#define UI_VERSION 0X21327598
#define UNIFORM_TOPBAR_CHARGING_CASE_CAPACITY 0X1A3C02
#define UNIFORM_TOPBAR_CHARGING_CASE_CAPACITY_1 0X1A3C05
#define UNIFORM_TOPBAR_CHARGING_CASE_PIC 0X1A2003
#define UNIFORM_TOPBAR_CHARGING_CASE_PIC_1 0X1A2007
#define UNIFORM_TOPBAR_EARPHONE 0X1A2000
#define UNIFORM_TOPBAR_EARPHONE_1 0X1A2004
#define UNIFORM_TOPBAR_LAYER 0X1A1000
#define UNIFORM_TOPBAR_LAYOUT 0X1A0C00
#define UNIFORM_TOPBAR_LAYOUT_1 0X1A0C01
#define UNIFORM_TOPBAR_L_EAR_CAPACITY 0X1A3C00
#define UNIFORM_TOPBAR_L_EAR_CAPACITY_1 0X1A3C03
#define UNIFORM_TOPBAR_L_EAR_PIC 0X1A2001
#define UNIFORM_TOPBAR_L_EAR_PIC_1 0X1A2005
#define UNIFORM_TOPBAR_R_EAR_CAPACITY 0X1A3C01
#define UNIFORM_TOPBAR_R_EAR_CAPACITY_1 0X1A3C04
#define UNIFORM_TOPBAR_R_EAR_PIC 0X1A2002
#define UNIFORM_TOPBAR_R_EAR_PIC_1 0X1A2006
#define UNIFORM_TOPBAR_TIME 0X1A2800
#define UNIFORM_TOPBAR_TIME_1 0X1A2801
#define VOLUME_ADD_PIC 0X122001
#define VOLUME_DISPLAY_NUM 0X123C00
#define VOLUME_LAYER 0X121000
#define VOLUME_LAYOUT 0X120C00
#define VOLUME_SUB_PIC 0X122000
#define YEAR_NUM_FIR 0X263C01
#define YEAR_NUM_FOU 0X263C04
#define YEAR_NUM_SEC 0X263C02
#define YEAR_NUM_THI 0X263C03
#define Y_M_D 0X263C00
#endif //UI_TOOL_ENAME_H
@@ -0,0 +1,5 @@
#ifndef UI_TOOL_ENAME_SIDEBAR
#define UI_TOOL_ENAME_SIDEBAR
#endif //UI_TOOL_ENAME_SIDEBAR_H
@@ -0,0 +1,13 @@
#ifndef UI_TOOL_ENAME_SIDEBAR
#define UI_TOOL_ENAME_SIDEBAR
#define SIDEBAR_BASEFORM_277 0X8001000
#define SIDEBAR_PAGE_0 0X8000800
#define SIDEBAR_TOP 0X8000C00
#define SIDEBAR_UI_ROTATE 0X0
#define SIDEBAR_UI_VERSION 0X18002400
#define STYLE_SIDEBAR_ID(x) SIDEBAR_##x
#endif //UI_TOOL_ENAME_SIDEBAR_H
@@ -0,0 +1,22 @@
#ifndef UI_TOOL_ENAME_UPGRADE
#define UI_TOOL_ENAME_UPGRADE
#define UPGRADE_BASEFORM_1 0X10002000
#define UPGRADE_BASEFORM_14 0X10005401
#define UPGRADE_BASEFORM_16 0X10005400
#define UPGRADE_PAGE_0 0X10000800
#define UPGRADE_UI_ROTATE 0X0
#define UPGRADE_UI_VERSION 0X30021006
#define UPGRADE_UPGRADE_BASEFORM_2 0X10001000
#define UPGRADE_UPGRADE_LAYOUT 0X10000C00
#define UPGRADE_UPGRADE_LOADING 0X10000C01
#define UPGRADE_UPGRADE_PERCENT_VALUE 0X10003C00
#define UPGRADE_UPGRADE_PROGRESS_BCAKUP 0X10005000
#define UPGRADE_UPGRADE_PROGRESS_PERCENT 0X10005001
#define UPGRADE_UPGRADE_STAGE_VALUE 0X10003C01
#define STYLE_UPGRADE_ID(x) UPGRADE_##x
#endif //UI_TOOL_ENAME_UPGRADE_H
@@ -0,0 +1,13 @@
#ifndef UI_TOOL_ENAME_UPGRADE
#define UI_TOOL_ENAME_UPGRADE
#define UPGRADE_PAGE_0 0X10000800
#define UPGRADE_UI_ROTATE 0X0
#define UPGRADE_UI_VERSION 0X30002400
#define UPGRADE_UPGRADE_BASEFORM_2 0X10001000
#define UPGRADE_UPGRADE_LAYOUT 0X10000C00
#define STYLE_UPGRADE_ID(x) UPGRADE_##x
#endif //UI_TOOL_ENAME_UPGRADE_H
+332
View File
@@ -0,0 +1,332 @@
#ifndef _JLUI_API_H_
#define _JLUI_API_H_
#include "app_config.h"
#include "ui/lcd/lcd_drive.h"
#include "jlui/ui.h"
#include "jlui_app/ui_style.h"
#include "app_msg.h"
#if CONFIG_JL_UI_ENABLE
#define KEY_CHANGE_PAGE APP_MSG_CHANGE_MODE
#define KEY_OK APP_MSG_LCD_OK
enum {
//按键会经过ui的消息 请放这里
KEY_UI_HOME = 0x40,
KEY_UI_SHORTCUT,
KEY_UI_POWEROFF,
KEY_UI_MENU_LIST,
KEY_UI_MINUS,
KEY_UI_PLUS,
KEY_UI_TRIPLE_CLICK,
};
#define GRT_CUR_MENU (0)
#define GET_MAIN_MENU (1)
#define CURR_WINDOW_MAIN (0)
enum ui_devices_type {
LED_7,
LCD_SEG3X9,
TFT_LCD,//彩屏
DOT_LCD,//点阵屏
};
//板级配置数据结构
struct ui_devices_cfg {
enum ui_devices_type type;
void *private_data;
};
struct touch_event {
int event;
int x;
int y;
int has_energy;
};
extern const struct ui_devices_cfg ui_cfg_data;
//led7 api
#if (TCFG_UI_ENABLE&&(CONFIG_UI_STYLE == STYLE_JL_LED7))
extern int led7_ui_init(const struct ui_devices_cfg *ui_cfg);
extern void ui_set_main_menu(enum ui_menu_main menu);
extern void ui_menu_reflash(u8 break_in);//break_in 是否打断显示,例如显示设置过程中需要刷新新界面。是是否打断设置界面显示
extern u8 ui_get_app_menu(u8);
extern void ui_set_led(u8 app_menu, u8 on, u8 phase, u16 highlight, u16 period);
extern void ui_set_auto_reflash(u32 msec);//自动刷新主页
extern void ui_close_main_menu();
extern void ui_set_tmp_menu(u8 app_menu, u16 ret_time, s32 arg, void (*timeout_cb)(u8 menu));
extern void ui_common(void *hd, void *private, u8 menu, u32 arg);//公共显示
#endif // #if (TCFG_UI_ENABLE&&(CONFIG_UI_STYLE == STYLE_JL_LED7))
//lcd api
//
extern int lcd_ui_init(void *arg);
extern int ui_hide_main(int id);
extern int ui_show_main(int id);
extern u8 get_need_password();
extern void set_need_password(u8 flag);
extern u8 get_screen_saver_status();
extern void ui_screen_recover(u8 recover_cur_page);
extern void ui_screen_saver(void *p);
extern int get_cur_srreen_width_and_height(u16 *screen_width, u16 *screen_height);
extern int get_cur_srreen_radius_and_fill_argb(u16 *screen_radius, u32 *screen_fill_argb);
extern u8 get_return_index();
extern u8 ui_return_page_pop(u8 dir);
extern int ui_return_page_pop_spec(u32 page_id); // 跳转到指定页面,清除中间的page记录
extern u8 ui_return_page_sub();
extern u8 ui_return_page_add(int page_id);
extern u32 ui_return_page_id();
extern u32 ui_return_prev_page_id(void);
extern void ui_return_page_push(int page_id);
extern void ui_return_page_clear();
extern void ui_return_page_del(int page_id);
/*
int (*entry)(int); // 返回trueentry回调里面自定义处理;返回false或者回调为NULL,默认显示page
int (*exit)(int); // 返回trueexit回调里面自定义处理;返回false或者回调为NULL,默认清除记录
*/
extern int ui_preemption_page_push(int page_id, int (*entry)(int), int (*exit)(int), u8 priority);
extern int ui_preemption_page_pop(int page_id);
extern int ui_preemption_page_del(int page_id);
extern int ui_preemption_page_check(void);
u32 ui_menu_enter_anim_enable();
u32 ui_menu_enter_anim_disable();
u32 ui_menu_enter_anim_flag_get();
extern int ui_auto_sw_page_effect_post(int curr_win, int next_win, u16 effect_mode, void *user_effect, void *effect_priv);
enum {
SCALE_EFFECT_OUT,
SCALE_EFFECT_IN,
};
extern int ui_page_scale_effect_post(int curr_win, int next_win, int dir);
typedef enum {
SLIDE_MODE_OFF,
SLIDE_MODE_NOT_RIGHT_ALL,
SLIDE_MODE_NOT_RIGHT_FIRST,
SLIDE_MODE_NOT_LOOP,
} CARD_SLIDE_MODE;
#define SIDEBAR_LEFT_IN_FIRST_PAGE 1
#define SIDEBAR_LEFT_IN_ALL_PAGE 2
extern int ui_page_manager_mode_set(u8 mode);
extern int ui_page_manager_mode_get(void);
extern void ui_card_enable(void);
extern void ui_card_disable(void);
extern u8 ui_card_get_move_mode();
extern void ui_card_set_move_mode(u8 mode);
extern int ui_show_window_slide(u32 page_id, int mode, int step);
extern int ui_server_msg_post(const char *msg, ...);
extern int ui_hide_curr_main();
extern int ui_touch_msg_post(struct touch_event *event);
extern int ui_touch_msg_post_withcallback(struct touch_event *event, void (*cb)(u8 finish));
extern int ui_key_msg_post(int msg);
extern void key_ui_takeover(u8 on);
extern int key_is_ui_takeover();
extern void ui_touch_timer_delete();
extern void ui_touch_timer_start();
extern void ui_auto_shut_down_modify(void);
extern void ui_auto_shut_down_re_run(void);
extern void ui_auto_shut_down_enable(void);
extern u8 ui_auto_shut_down_disable(void);
extern void ui_set_shut_down_time(u16 time);
extern int ui_get_shut_down_time();
extern void ui_set_shut_down_time_ms(u32 time_ms);
extern int ui_get_shut_down_time_ms();
extern u32 *get_ui_mem_id();
extern u32 get_ui_mem_id_size();
extern void set_ui_open_flag(u8 flag);
extern u8 get_ui_open_flag();
extern u8 get_ui_init_status();
extern void ui_backlight_close(void);
extern void ui_backlight_open(u8 recover_cur_page);
extern int watch_get_style();
extern int watch_set_style(int style);
extern void ui_auto_goto_dial_enable(void);
extern void ui_auto_goto_dial_disable(void);
extern void ui_send_event(u16 event, u32 val);
extern void ui_moto_run(u8 run_mode);
extern void cs_ui_popup_page(u32 page_id);
//表盘管理
extern void watch_set_need_reload(u8 need);
extern int watch_set_style(int style);
extern int watch_set_style_by_name(char *name);
extern int watch_get_style();
extern int watch_get_style_by_name(char *name);
extern char *watch_get_item(int style);
extern int watch_get_items_num();
extern char *watch_get_full_path();
extern char *watch_get_cur_path();
extern char *watch_get_root_path();
extern int watch_get_cur_path_len();
//表盘背景管理
extern u32 watch_bgp_get_nums();
extern char *watch_bgp_get_item(u8 sel_item);
extern char *watch_bgp_get_name(int item);
extern char *watch_bgp_add(char *bgp);
extern int watch_bgp_del(char *bgp);
extern int watch_bgp_set_related(char *bgp, u8 cur_watch, u8 del);
extern char *watch_bgp_get_related(u8 cur_watch);
extern char *watch_bgp_get_related_path(u8 cur_watch);
extern int watch_bgp_related_del_all(char *bgp);
extern int watch_bgp_get_index(char *bgp_name);
extern char *watch_bgp_get_item_without_path(s8 sel_item);
//多页面显示
extern int ui_show_multi_page();
extern int ui_hide_multi_page();
//=================================================================================//
// UI API //
//=================================================================================//
#if (TCFG_UI_ENABLE)
#if(CONFIG_UI_STYLE == STYLE_JL_LED7)//led7 显示
#define UI_INIT(a) led7_ui_init(a)
#define UI_SHOW_WINDOW(a) ui_set_main_menu(a)
#define UI_HIDE_WINDOW(...) ui_close_main_menu()
#define UI_HIDE_CURR_WINDOW() ui_close_main_menu()
#define UI_GET_WINDOW_ID() ui_get_app_menu(GET_MAIN_MENU)
#define UI_GET_CURR_MENU() ui_get_app_menu(GRT_CUR_MENU)
#define UI_REFLASH_WINDOW(a) ui_menu_reflash(a)
#define UI_SHOW_MENU ui_set_tmp_menu
#define UI_MSG_POST(...)
#else
#if (CONFIG_LVGL_UI_ENABLE)
#define UI_INIT(...)
#define UI_SHOW_WINDOW(...)
#define UI_HIDE_WINDOW(...)
#define UI_GET_WINDOW_ID() (-1)
#define UI_HIDE_CURR_WINDOW()
#define UI_SHOW_MENU(...)
#define UI_MSG_POST(...)
#define UI_REFLASH_WINDOW(a)
#define UI_MOTO_RUN(...)
#define UI_WINDOW_BACK_PUSH(a)
#define UI_WINDOW_BACK_SHOW(a)
#define UI_WINDOW_BACK_SPEC_SHOW(a)
#define UI_WINDOW_BACK_CLEAN()
#define UI_WINDOW_BACK_SUB()
#define UI_WINDOW_BACK_INDEX()
#define UI_WINDOW_BACK_DEL(a)
#define UI_WINDOW_PREEMPTION_POSH(a,b,c,d) (-1)
#define UI_WINDOW_PREEMPTION_DEL(a)
#define UI_WINDOW_PREEMPTION_POP(a)
#define UI_WINDOW_PREEMPTION_CHECK() (false)
/*#define platform_get_file(a)*/
#else
#define UI_INIT(a) lcd_ui_init(a)
#define UI_SHOW_WINDOW(a) ui_show_main(a)
#define UI_HIDE_WINDOW(a) ui_hide_main(a)
#define UI_HIDE_CURR_WINDOW() ui_hide_curr_main()
#define UI_GET_WINDOW_ID() ui_get_current_window_id()
#define UI_MSG_POST ui_server_msg_post
#define UI_SHOW_MENU(...)
#define UI_GET_CURR_MENU()
#define UI_REFLASH_WINDOW(a)
#define UI_MOTO_RUN(a) ui_moto_run(a)
#define UI_WINDOW_BACK_PUSH(a) ui_return_page_push(a)
#define UI_WINDOW_BACK_SHOW(a) ui_return_page_pop(a)
#define UI_WINDOW_BACK_SPEC_SHOW(a) ui_return_page_pop_spec(a)
#define UI_WINDOW_BACK_CLEAN() ui_return_page_clear()
#define UI_WINDOW_BACK_ADD(a) ui_return_page_add(a)
#define UI_WINDOW_BACK_SUB() ui_return_page_sub()
#define UI_WINDOW_BACK_INDEX() get_return_index()
#define UI_WINDOW_BACK_DEL(a) ui_return_page_del(a)
#define UI_WINDOW_PREEMPTION_POSH(a,b,c,d) ui_preemption_page_push(a,b,c,d)
#define UI_WINDOW_PREEMPTION_POP(a) ui_preemption_page_pop(a)
#define UI_WINDOW_PREEMPTION_DEL(a) ui_preemption_page_del(a)
#define UI_WINDOW_PREEMPTION_CHECK() ui_preemption_page_check()
#define CS_UI_POPUP_PAGE(a) cs_ui_popup_page(a)
#define UI_SHOW_MULTI_PAGE() ui_show_multi_page()
#define UI_HIDE_MULTI_PAGE() ui_hide_multi_page()
#endif
#endif
#else
//common api lcd屏和led7 通用api
#define UI_INIT(...)
#define UI_SHOW_WINDOW(...)
#define UI_HIDE_WINDOW(...)
#define UI_GET_WINDOW_ID() (-1)
#define UI_HIDE_CURR_WINDOW()
#define UI_SHOW_MENU(...)
#define UI_MSG_POST(...)
#define UI_REFLASH_WINDOW(a)
#define UI_MOTO_RUN(...)
#define UI_WINDOW_BACK_PUSH(a)
#define UI_WINDOW_BACK_SHOW(a)
#define UI_WINDOW_BACK_SPEC_SHOW(a)
#define UI_WINDOW_BACK_CLEAN()
#define UI_WINDOW_BACK_SUB()
#define UI_WINDOW_BACK_INDEX()
#define UI_WINDOW_BACK_DEL(a)
#define UI_WINDOW_PREEMPTION_POSH(a,b,c,d) (-1)
#define UI_WINDOW_PREEMPTION_DEL(a)
#define UI_WINDOW_PREEMPTION_POP(a)
#define UI_WINDOW_PREEMPTION_CHECK() (false)
#define CS_UI_POPUP_PAGE(a)
#endif /* #if TCFG_UI_ENABLE */
// UI抢占显示,最大PAGE_PREEMPTION_MAX-1
#define UI_WINDOW_PREEMPTION_TYPE_TIMER_COUNTDOWN 1 // 计时器
#define UI_WINDOW_PREEMPTION_TYPE_ALARM 2 // 闹钟
#define UI_WINDOW_PREEMPTION_TYPE_PHONE 3 // 电话
#define UI_WINDOW_PREEMPTION_TYPE_CHARGE 3 // 充电
#define UI_WINDOW_PREEMPTION_TYPE_SPORT 4 // 锻炼
#define UI_WINDOW_PREEMPTION_TYPE_DETECTION 4 // 久坐提醒
#define UI_WINDOW_PREEMPTION_TYPE_FALL 4 // 跌倒检测
#define UI_WINDOW_PREEMPTION_TYPE_UPGRADE 5 // 升级
#define UI_WINDOW_PREEMPTION_TYPE_PC 5 // PC
#define UI_WINDOW_PREEMPTION_TYPE_POWEROFF 6 // 关机
#define UI_WINDOW_PREEMPTION_TYPE_POP_UP 7 // 开关盖
#endif // #if CONFIG_JL_UI_ENABLE
#endif
@@ -0,0 +1,187 @@
#ifndef __jlui_app_ui_effect__
#define __jlui_app_ui_effect__
#include "ui_core.h"
#include "jlui/ui_page_manager.h"
#include "jlui/ui_page_switch.h"
struct ui_page_draw {
pJLGPUTaskHead_t *new_task_list;
struct rect *rec_page_rect;
struct rect *rec_gpu_rect;
struct rect *rec_lcd_rect;
u32 new_list_create;
u32 list_total;
};
struct ui_effect_module {
int style;
int (*ontouch)(struct element_touch_event *);
int (*get_status)(void);
void (*uninit)(void);
int (*effect_draw)(pJLGPUMultTaskList_t mult_list, struct ui_page_draw *draw);
};
extern struct ui_effect_module ui_effect_module_begin[];
extern struct ui_effect_module ui_effect_module_end[];
#define REGISTER_UI_EFFECT_MODULE(mode) \
const struct ui_effect_module ui_effect_mod_##mode \
sec(.ui_effect_module) = {\
.style = mode,
struct ui_effect_module *ui_effect_get_handle_by_style(int style);
/* ------------------------------------------------------------------------------------*/
/**
* @brief ui_effect_set_alpha 修改透明度
*
* @param elm 控件句柄
* @param alpha 透明度
* @param child 是否更新子控件为同一透明度
* @param redraw 是否刷新
*/
/* ------------------------------------------------------------------------------------*/
void ui_effect_set_alpha(struct element *elm, int alpha, int child, int redraw);
/* ------------------------------------------------------------------------------------*/
/**
* @brief ui_ram_image_attrs_set 创建ram图像信息
*
* @param img
* @param data
* @param data_len
* @param width
* @param height
* @param format
*
* @return
*/
/* ------------------------------------------------------------------------------------*/
int ui_ram_image_attrs_set(struct ui_image_attrs *img, u8 *data, int data_len, int width, int height, int format);
/* ------------------------------------------------------------------------------------*/
/**
* @brief jlgpu_create_task_list_by_image 添加图片任务
*
* @param head
* @param image_attr
* @param xoffset
* @param yoffset
*
* @return
*/
/* ------------------------------------------------------------------------------------*/
pJLGPUTaskHead_t jlgpu_create_task_list_by_image(pJLGPUTaskHead_t head, struct ui_image_attrs *image_attr, int xoffset, int yoffset);
/* ------------------------------------------------------------------------------------*/
/**
* @brief jlgpu_create_task_list_by_image_set_blend_mode 创建图片任务链
*
* @param head
* @param image_attr
* @param xoffset
* @param yoffset
* @param blend_mode 指定blend方式
*
* @return
*/
/* ------------------------------------------------------------------------------------*/
pJLGPUTaskHead_t jlgpu_create_task_list_by_image_set_blend_mode(pJLGPUTaskHead_t head, struct ui_image_attrs *image_attr, int xoffset, int yoffset, int blend_mode);
/* ------------------------------------------------------------------------------------*/
/**
* @brief menu_enter_app_anim 页面进入动画
*
* @param app_id 要进入的页面
* @param touch_x 触点x
* @param touch_y 触点y
*/
/* ------------------------------------------------------------------------------------*/
void menu_enter_app_anim(u32 app_id, int touch_x, int touch_y);
/* ------------------------------------------------------------------------------------*/
/**
* @brief menu_enter_app_state 状态判断
*
* @return
*/
/* ------------------------------------------------------------------------------------*/
int menu_enter_app_state();
/* ------------------------------------------------------------------------------------*/
/**
* @brief ui_return_page_effect_set_pos 设置返回坐标
*
* @param pos_x
* @param pos_y
*/
/* ------------------------------------------------------------------------------------*/
void ui_return_page_effect_set_pos(u16 pos_x, u16 pos_y);
/* ------------------------------------------------------------------------------------*/
/**
* @brief ui_return_page_effect_set_en 使能返回特效
*
* @param enable
*/
/* ------------------------------------------------------------------------------------*/
void ui_return_page_effect_set_en(u8 enable);
/* ------------------------------------------------------------------------------------*/
/**
* @brief ui_return_page_effect_set_win 记录需要从哪个页面返回
*
* @param window
*/
/* ------------------------------------------------------------------------------------*/
void ui_return_page_effect_set_win(u32 window);
/* ------------------------------------------------------------------------------------*/
/**
* @brief ui_return_page_effect_enable 返回特效配置
*
* @param window
* @param pos_x
* @param pos_y
* @param enable
*/
/* ------------------------------------------------------------------------------------*/
void ui_return_page_effect_enable(u32 window, u16 pos_x, u16 pos_y, u8 enable);
/* ------------------------------------------------------------------------------------*/
/**
* @brief ui_return_page_effect_init 返回特效
*
* @param ret_page 返回页面
*
* @return 0 支持启动返回特效,-1 不支持返回特效
*/
/* ------------------------------------------------------------------------------------*/
int ui_return_page_effect_init(u32 ret_page);
/* ------------------------------------------------------------------------------------*/
/**
* @brief ui_return_page_effect_move 跟手滑动
*
* @param xoffset
* @param yoffset
*/
/* ------------------------------------------------------------------------------------*/
void ui_return_page_effect_move(int xoffset, int yoffset);
/* ------------------------------------------------------------------------------------*/
/**
* @brief ui_return_page_effect_free 抬手动画
*/
/* ------------------------------------------------------------------------------------*/
void ui_return_page_effect_free();
/* ------------------------------------------------------------------------------------*/
/**
* @brief ui_return_page_effect_touch 返回跟手
*
* @param e
*
* @return
*/
/* ------------------------------------------------------------------------------------*/
int ui_return_page_effect_touch(struct element_touch_event *e);
/* ------------------------------------------------------------------------------------*/
/**
* @brief ui_return_page_effect_in_move 返回动画状态
*
* @return
*/
/* ------------------------------------------------------------------------------------*/
int ui_return_page_effect_in_move();
#endif
@@ -0,0 +1,12 @@
#ifndef __UI_MENU_MANAGE_H__
#define __UI_MENU_MANAGE_H__
#define MENU_SEL_ID_APP_MENU 0
#define MENU_APP_RECORD 1
#define MENU_SEL_ID_MAX 2
u32 ui_menu_map_by_sel(u32 sel, u32 menu_type);
#endif
@@ -0,0 +1,33 @@
//generated by ResBuilder in 2023-05-07 22:59:59
#ifndef _RESULT_PIC_INDEX_H_
#define _RESULT_PIC_INDEX_H_
////BmpResID Define Table////
//PAGE 0
#define PAGE0_4994_03_MENU_ICON_STATE_SEL 0x000001 // images\03.menu_icon_state_sel.png
#define PAGE0_de6b_04_MENU_ICON_HEART_SEL 0x000002 // images\04.menu_icon_heart_sel.bmp
#define PAGE0_4e97_04_MENU_ICON_HEART_SEL 0x000003 // images\04.menu_icon_heart_sel.png
#define PAGE0_5dad_05_MENU_ICON_BLOOD_SEL 0x000004 // images\05.menu_icon_blood_sel.png
#define PAGE0_060f_BIRD_1 0x000005 // images\bird_1.png
#define PAGE0_18e2_CLOCK 0x000006 // images\clock.bmp
#define PAGE0_7b17_COMPASS 0x000007 // images\compass.png
#define PAGE0_daca_COMPASS1 0x000008 // images\compass1.png
#define PAGE0_9d77_HOUR 0x000009 // images\hour.png
#define PAGE0_976c_ICON1 0x00000a // images\icon1.png
#define PAGE0_26a3_ICON2 0x00000b // images\icon2.png
#define PAGE0_5fd9_MINUTE_SEC 0x00000c // images\minute_sec.png
#define PAGE0_38d6_SCA1 0x00000d // images\sca1.bmp
#define PAGE0_8919_SCA2 0x00000e // images\sca2.bmp
#define PAGE0_e65c_SCA3 0x00000f // images\sca3.bmp
#define PAGE0_95e3_SCA5 0x000010 // images\sca5.bmp
#define PAGE0_e4c4_TEST0 0x000011 // images\test0.jpg
#define PAGE0_8b81_TEST1 0x000012 // images\test1.jpg
#define PAGE0_3a4e_TEST2 0x000013 // images\test2.jpg
#define PAGE0_550b_TEST3 0x000014 // images\test3.jpg
#define PAGE0_5435_TEXT 0x000015 // images\text.png
#define PAGE0_17d5_WEIXIN_20220507102155 0x000016 // images\weixin_20220507102155.png
#define PAGE0_97e0_WHITE 0x000017 // images\white.bmp
#endif
@@ -0,0 +1,7 @@
#ifndef __UI_RESOURCE_H__
#define __UI_RESOURCE_H__
#include "jlui_app/result_pic_index.h"
#include "jlui_app/result_str_index.h"
#endif
@@ -0,0 +1,432 @@
#ifndef UI_STYLE_H
#define UI_STYLE_H
#include "app_config.h"
#if (CONFIG_UI_STYLE == STYLE_JL_WATCH_PUBLIC_MODLS)
#include "jlui_app/style_JL_new.h"
#include "jlui_app/style_DIAL_new.h"
#include "jlui_app/style_upgrade_new.h"
#include "jlui_app/style_sidebar.h"
#define ID_WINDOW_DIAL DIAL_PAGE_0
#define ID_WINDOW_POWER_ON PAGE_1
#define ID_WINDOW_POWER_OFF PAGE_2
#define ID_WINDOW_MENU_LIST PAGE_3
#define ID_WINDOW_MENU_STAR PAGE_4
#define ID_WINDOW_DAYACTIVE PAGE_5
#define ID_WINDOW_SETTING PAGE_7
#define ID_WINDOW_UNDISTURB PAGE_8
#define ID_WINDOW_SHUTDOWN PAGE_9
#define ID_WINDOW_REBOOT PAGE_10
#define ID_WINDOW_SETTING_PASSWORD PAGE_11
#define ID_WINDOW_HEALTH_TIPS PAGE_12
#define ID_WINDOW_LOW_POWER PAGE_13
#define ID_WINDOW_BACK2FACTORY PAGE_14
#define ID_WINDOW_TIMER PAGE_15
#define ID_WINDOW_STOPWATCH PAGE_16
#define ID_WINDOW_ALIPAY PAGE_17
#define ID_WINDOW_APP_QRCODE PAGE_18
#define ID_WINDOW_ABOUT PAGE_19
#define ID_WINDOW_POWERON_PASSWORD PAGE_20
#define ID_WINDOW_SIRI PAGE_21
#define ID_WINDOW_SETTING_BRIGHTNESS PAGE_22
#define ID_WINDOW_SETTING_VOICE PAGE_23
#define ID_WINDOW_CONN_NEW_PHONE PAGE_24
#define ID_WINDOW_COMPASS PAGE_25
#define ID_WINDOW_PHONE PAGE_26
#define ID_WINDOW_PHONE_KEYPAD PAGE_27
#define ID_WINDOW_PHONE_CALL_STATUS PAGE_28
#define ID_WINDOW_ALARM PAGE_29
#define ID_WINDOW_ALARM_RINGING PAGE_30
#define ID_WINDOW_MUSIC_PLAYER PAGE_31
#define ID_WINDOW_WEATHER PAGE_32
#define ID_WINDOW_PHOTOGRAGH PAGE_33
#define ID_WINDOW_CALCULATOR PAGE_34
#define ID_WINDOW_CALENDAR PAGE_35
#define ID_WINDOW_MENU_WATERFALLS PAGE_36
#define ID_WINDOW_MENU_WOMEN_HEALTH PAGE_37
#define ID_WINDOW_BATCHARGE PAGE_38
#define ID_WINDOW_SPORT_TARGET PAGE_39
#define ID_WINDOW_SPORT_TARGET_KM_SET PAGE_40
#define ID_WINDOW_SPORT_RESULT PAGE_41
#define ID_WINDOW_MOMENTUM PAGE_42
#define ID_WINDOW_SPORTING PAGE_43
#define ID_WINDOW_INDOOR_SPORTS PAGE_44
#define ID_WINDOW_OUTDOOR_SPORTS PAGE_45
#define ID_WINDOW_SPORT_INTENSITY PAGE_46
#define ID_WINDOW_RUNLIGHT PAGE_47
#define ID_WINDOW_BREATH_TRAIN PAGE_48
#define ID_WINDOW_HEART PAGE_49
#define ID_WINDOW_OXYGEN PAGE_50
#define ID_WINDOW_SLEEPAID PAGE_51
#define ID_WINDOW_SLEEP PAGE_52
#define ID_WINDOW_BLOODPRESSURE PAGE_53
#define ID_WINDOW_HEAT PAGE_54
#define ID_WINDOW_SETTING_COMMON PAGE_55
#define ID_WINDOW_COMPONENT PAGE_56
#define ID_WINDOW_DIAL_SEL PAGE_57
#define ID_WINDOW_SHORTCUT_MENU PAGE_59
#define ID_WINDOW_NOTICE PAGE_60
#define ID_WINDOW_SPORT_TARGET_TIME_SET PAGE_62
#define ID_WINDOW_SPORT_TARGET_CAL_SET PAGE_63
#define ID_WINDOW_FOOTBALL PAGE_64
#define ID_WINDOW_RESTART_SHUTDOWN PAGE_65
#define ID_WINDOW_BEDSIDE_WATCH PAGE_67
#define ID_WINDOW_FLASHLIGHT PAGE_68
#define ID_WINDOW_ENGINEERING_MODE PAGE_69
#define ID_WINDOW_LOW_POWER_TIPS PAGE_70
#define ID_WINDOW_BT_DISCONN_TIPS PAGE_71
#define ID_WINDOW_WOMEN_HEALTH_WARNING PAGE_72
#define ID_WINDOW_RUBIKS_CUBE PAGE_73
#define ID_WINDOW_FINDMY PAGE_74
#define ID_WINDOW_BT_EMITTER PAGE_75
#define ID_WINDOW_SMARTWIN PAGE_76
#define ID_WINDOW_DIAL_MODE_SEL PAGE_77
#define ID_WINDOW_APP_IFLYTEK PAGE_78
#define ID_WINDOW_AI_DIAL PAGE_79
#define ID_WINDOW_NET_IFLY PAGE_80
#define ID_WINDOW_UVC PAGE_81
#define ID_WINDOW_CAMERA PAGE_82
#define ID_WINDOW_PC PAGE_83
#define ID_WINDOW_FINDPHONE 0
#define ID_WINDOW_UPGRADE UPGRADE_PAGE_0
#define ID_WINDOW_DEFAULT ID_WINDOW_DIAL//没有页面时返回
#define CONFIG_UI_STYLE_JL_PUBLIC_MODLS_ENABLE
#endif//STYLE_JL_WATCH_PUBLIC_MODLS
#if (CONFIG_UI_STYLE == STYLE_JL_CSC_PUBLIC_MODLS)
#include "jlui_app/style_JL_new_csc.h"
#include "jlui_app/style_DIAL_new_csc.h"
#include "jlui_app/style_upgrade_new_csc.h"
#include "jlui_app/style_sidebar_csc.h"
#define PAGE_NULL (-1)
#define ID_WINDOW_DIAL DIAL_PAGE_0
#define ID_WINDOW_POWER_ON PAGE_1
#define ID_WINDOW_POWER_OFF PAGE_2
#define ID_WINDOW_APP_QRCODE PAGE_NULL //APP下载二维码
#define ID_WINDOW_PAGE_EFFECTS_SW PAGE_NULL
#define ID_WINDOW_MENU_EFFECTS_SW PAGE_NULL
#define ID_WINDOW_TIMER PAGE_NULL
#define ID_WINDOW_ALARM_CLOCK PAGE_3
#define ID_WINDOW_QRCODE PAGE_NULL //APP连接二维码
#define ID_WINDOW_ABOUT PAGE_NULL
#define ID_WINDOW_PHONE PAGE_NULL
#define ID_WINDOW_PHONE_KEYPAD PAGE_NULL
#define ID_WINDOW_PHONE_CALL_STATUS PAGE_4
#define ID_WINDOW_ALARM_RINGING PAGE_5
#define ID_WINDOW_WEATHER PAGE_NULL
#define ID_WINDOW_PHOTOGRAGH PAGE_6
#define ID_WINDOW_CALENDAR PAGE_NULL
#define ID_WINDOW_MENU_WOMEN_HEALTH PAGE_NULL
#define ID_WINDOW_BATCHARGE PAGE_7
#define ID_WINDOW_NOTICE PAGE_21
#define ID_WINDOW_LANGUAGE_SELECT PAGE_NULL
#define ID_WINDOW_FOOTBALL PAGE_NULL
#define ID_WINDOW_FLASHLIGHT PAGE_NULL
#define ID_WINDOW_ENGINEERING_MODE PAGE_NULL
#define ID_WINDOW_VOLUME PAGE_9
#define ID_WINDOW_EARPHONE_DISNOISE PAGE_10
#define ID_WINDOW_EQUALIZER PAGE_11
#define ID_WINDOW_MUSIC_PLAYER PAGE_12
#define ID_WINDOW_H_LIST PAGE_NULL
#define ID_WINDOW_TOPBAR PAGE_13
#define ID_WINDOW_MUSIC_LRC PAGE_NULL
#define ID_WINDOW_BG_SELECT PAGE_NULL
#define ID_WINDOW_LOCK_SELECT PAGE_14
#define ID_WINDOW_POP_UP PAGE_NULL
#define ID_WINDOW_TIKTOK PAGE_15
#define ID_WINDOW_LANGUAGE PAGE_16
#define ID_WINDOW_FIND_EARPHONE PAGE_17
#define ID_WINDOW_LCD_BRIGHTNESS PAGE_18
#define ID_WINDOW_LCD_LIGHT_TIME PAGE_NULL
#define ID_WINDOW_APP_MENU PAGE_NULL
#define ID_WINDOW_SET_MENU PAGE_NULL
#define ID_WINDOW_SURE PAGE_NULL
#define ID_WINDOW_TOUCH_AWAKE PAGE_NULL
#define ID_WINDOW_TIME_SETTING PAGE_19
#define ID_WINDOW_RESTART_SHUTDOWN PAGE_20
#define ID_WINDOW_KEY_SET PAGE_NULL
#define ID_WINDOW_EFFECT_SEL PAGE_NULL
#define ID_WINDOW_BEDSIDE_WATCH PAGE_NULL
#define ID_WINDOW_SPORTING PAGE_NULL
#define ID_WINDOW_SPORT_RESULT PAGE_NULL
#define ID_WINDOW_POWERON_PASSWORD PAGE_NULL
#define ID_WINDOW_COMPONENT PAGE_NULL
#define ID_WINDOW_SHORTCUT_MENU PAGE_NULL
#define ID_WINDOW_STOPWATCH PAGE_NULL
#define ID_WINDOW_INDOOR_SPORTS PAGE_NULL
#define ID_WINDOW_OUTDOOR_SPORTS PAGE_NULL
#define ID_WINDOW_FINDPHONE 0
#define ID_WINDOW_UPGRADE UPGRADE_PAGE_0
#define ID_WINDOW_DEFAULT ID_WINDOW_MUSIC_PLAYER//没有页面时返回
#define CONFIG_UI_STYLE_JL_CSC_PUBLIC_MODLS_ENABLE
#endif//STYLE_JL_CSC_PUBLIC_MODLS
#if (CONFIG_UI_STYLE == STYLE_JL_WTACH_NEW)
#include "jlui_app/style_JL_new.h"
#include "jlui_app/style_DIAL_new.h"
#include "jlui_app/style_upgrade_new.h"
#include "jlui_app/style_sidebar.h"
#ifdef PAGE_0
#undef PAGE_0
#define PAGE_0 DIAL_PAGE_0
#endif
// #define ID_WINDOW_BT PAGE_76
#define ID_WINDOW_DIAL PAGE_0
#define ID_WINDOW_BT PAGE_0
#define ID_WINDOW_CLOCK PAGE_0
#define ID_WINDOW_ACTIVERECORD PAGE_1
#define ID_WINDOW_SLEEP PAGE_2
#define ID_WINDOW_MAIN PAGE_3
#define ID_WINDOW_POWER_ON PAGE_4
#define ID_WINDOW_POWER_OFF PAGE_5
#define ID_WINDOW_VMENU PAGE_7
#define ID_WINDOW_PHONE PAGE_6
#define ID_WINDOW_MUSIC PAGE_10
#define ID_WINDOW_CALL_DIAL PAGE_13
#define ID_WINDOW_IDLE PAGE_15
#define ID_WINDOW_STAR_MENU PAGE_17
#define ID_WINDOW_PHONEBOOK PAGE_19
#define ID_WINDOW_PHONEBOOK_SYNC PAGE_20
#define ID_WINDOW_MUSIC_SET PAGE_21
#define ID_WINDOW_CALLRECORD PAGE_22
#define ID_WINDOW_PAGE PAGE_23
#define ID_WINDOW_MUSIC_BROWER PAGE_28
#define ID_WINDOW_PC PAGE_32
#define ID_WINDOW_STOPWATCH PAGE_33
#define ID_WINDOW_CALCULAGRAPH PAGE_34
#define ID_WINDOW_SET PAGE_41
#define ID_WINDOW_SCREEN_DISP PAGE_42
#define ID_WINDOW_VOICE_SET PAGE_43
#define ID_WINDOW_SHAKE_LEVEL PAGE_44
#define ID_WINDOW_UNDISTURB_MODE PAGE_45
#define ID_WINDOW_ABOUT PAGE_46
#define ID_WINDOW_TRAIN_SET PAGE_47
#define ID_WINDOW_TOUCH_SEND PAGE_48
#define ID_WINDOW_USER_GUIDE PAGE_49
#define ID_WINDOW_SYS_MENU PAGE_50
#define ID_WINDOW_ALARM PAGE_51
#define ID_WINDOW_FLASHLIGHT PAGE_52
#define ID_WINDOW_FINDPHONE PAGE_53
#define ID_WINDOW_TRAIN PAGE_54
#define ID_WINDOW_SPORT_SHOW PAGE_55
#define ID_WINDOW_BREATH_TRAIN PAGE_57
#define ID_WINDOW_ALTIMETER PAGE_63
#define ID_WINDOW_BARO PAGE_64
#define ID_WINDOW_WEATHER PAGE_66
#define ID_WINDOW_PRESSURE PAGE_67
#define ID_WINDOW_COMPASS PAGE_73
#define ID_WINDOW_ALARM_RING_START PAGE_74
#define ID_WINDOW_STYLE PAGE_75
#define ID_WINDOW_HEART PAGE_76
#define ID_WINDOW_BLOOD_OXYGEN PAGE_77
#define ID_WINDOW_SPORT_INFO PAGE_78
#define ID_WINDOW_SPORT_CTRL PAGE_79
#define ID_WINDOW_SPORT_RECORD PAGE_80
#define ID_WINDOW_MESS PAGE_81
#define ID_WINDOW_FALL PAGE_83
#define ID_WINDOW_DETECTION PAGE_84
#define ID_WINDOW_LANGUAGE PAGE_85
#define ID_WINDOW_SHUTDOWN_OR_RESET PAGE_86
#define ID_WINDOW_TRAIN_STATUS PAGE_87
#define ID_WINDOW_SPORT_COURSE PAGE_88
#define ID_WINDOW_ALARM_RING_STOP PAGE_89
#define ID_WINDOW_ALARM_RING_SOON PAGE_90
#define ID_WINDOW_ALIPAY PAGE_94
#define ID_WINDOW_BT_SETTING PAGE_95
#define ID_WINDOW_RECORD PAGE_96
#define ID_WINDOW_CALENDAR PAGE_97
#define ID_WINDOW_CALCULATOR PAGE_98
#define ID_WINDOW_DRAWER PAGE_99
#define ID_WINDOW_CARD_BAG PAGE_100
#define ID_WINDOW_AI PAGE_103
#define ID_WINDOW_AI_DIAL PAGE_104
#define ID_WINDOW_CALL_CHANNEL_SEL PAGE_105
#define ID_WINDOW_CAT1_SETTING PAGE_106
#define ID_WINDOW_CAT1_AICXTEK_ENGINEERING PAGE_107
#define ID_WINDOW_CAT1_CALL_SMS_SEL PAGE_108
#define ID_WINDOW_CAT1_SMS_REPLY PAGE_109
#define ID_WINDOW_CAT1_UNISOC_ENGINEERING PAGE_110
#define ID_WINDOW_FINDMY_SETTING PAGE_111
#define ID_WINDOW_NET_IFLY PAGE_112
#define ID_WINDOW_UPGRADE UPGRADE_PAGE_0
#define CONFIG_UI_STYLE_JL_ENABLE
#endif
#if(CONFIG_UI_STYLE == STYLE_JL_SOUNDBOX)
#include "ui/style_jl02.h"//点阵//
#define ID_WINDOW_MAIN PAGE_0
#define ID_WINDOW_BT PAGE_1
#define ID_WINDOW_FM PAGE_2
#define ID_WINDOW_CLOCK PAGE_3
#define ID_WINDOW_MUSIC PAGE_4
#define ID_WINDOW_LINEIN PAGE_0
#define ID_WINDOW_POWER_ON PAGE_5
#define ID_WINDOW_POWER_OFF PAGE_6
#define ID_WINDOW_SYS PAGE_7
#endif
#if(CONFIG_UI_STYLE == STYLE_JL_LED7)//led7 显示
#define ID_WINDOW_BT UI_BT_MENU_MAIN
#define ID_WINDOW_FM UI_FM_MENU_MAIN
#define ID_WINDOW_CLOCK UI_RTC_MENU_MAIN
#define ID_WINDOW_MUSIC UI_MUSIC_MENU_MAIN
#define ID_WINDOW_LINEIN UI_AUX_MENU_MAIN
#define ID_WINDOW_PC UI_PC_MENU_MAIN
#define ID_WINDOW_POWER_ON UI_IDLE_MENU_MAIN
#define ID_WINDOW_POWER_OFF UI_IDLE_MENU_MAIN
#define ID_WINDOW_SPDIF UI_IDLE_MENU_MAIN
#define ID_WINDOW_IDLE UI_IDLE_MENU_MAIN
#endif
#if ((CONFIG_UI_STYLE == STYLE_JL_WTACH) || (CONFIG_UI_STYLE == STYLE_JL_WTACH_NEW))
#if (defined(ID_WINDOW_ACTIVERECORD) && defined(TCFG_UI_ENABLE_SPORTRECORD) && (!TCFG_UI_ENABLE_SPORTRECORD))
#undef ID_WINDOW_ACTIVERECORD
#define ID_WINDOW_ACTIVERECORD 0
#endif
#if (defined(ID_WINDOW_MUSIC) && defined(TCFG_UI_ENABLE_MUSIC) && (!TCFG_UI_ENABLE_MUSIC))
#undef ID_WINDOW_MUSIC
#define ID_WINDOW_MUSIC 0
#endif
#if (defined(ID_WINDOW_MUSIC_SET) && defined(TCFG_UI_ENABLE_MUSIC_MENU) && (!TCFG_UI_ENABLE_MUSIC_MENU))
#undef ID_WINDOW_MUSIC_SET
#define ID_WINDOW_MUSIC_SET 0
#endif
#if (defined(ID_WINDOW_MUSIC_BROWER) && defined(TCFG_UI_ENABLE_FILE) && (!TCFG_UI_ENABLE_FILE))
#undef ID_WINDOW_MUSIC_BROWER
#define ID_WINDOW_MUSIC_BROWER 0
#endif
#if (defined(ID_WINDOW_PHONEBOOK) && defined(TCFG_UI_ENABLE_PHONEBOOK) && (!TCFG_UI_ENABLE_PHONEBOOK))
#undef ID_WINDOW_PHONEBOOK
#define ID_WINDOW_PHONEBOOK 0
#undef ID_WINDOW_PHONEBOOK_SYNC
#define ID_WINDOW_PHONEBOOK_SYNC 0
#endif
#if (defined(ID_WINDOW_PC) && defined(TCFG_UI_ENABLE_PC) && (!TCFG_UI_ENABLE_PC))
#undef ID_WINDOW_PC
#define ID_WINDOW_PC 0
#endif
#if (defined(ID_WINDOW_STOPWATCH) && defined(TCFG_UI_ENABLE_STOPWATCH) && (!TCFG_UI_ENABLE_STOPWATCH))
#undef ID_WINDOW_STOPWATCH
#define ID_WINDOW_STOPWATCH 0
#endif
#if (defined(ID_WINDOW_CALCULAGRAPH) && defined(TCFG_UI_ENABLE_TIMER_ACTION) && (!TCFG_UI_ENABLE_TIMER_ACTION))
#undef ID_WINDOW_CALCULAGRAPH
#define ID_WINDOW_CALCULAGRAPH 0
#endif
#if (defined(ID_WINDOW_ALARM) && defined(TCFG_UI_ENABLE_ALARM) && (!TCFG_UI_ENABLE_ALARM))
#undef ID_WINDOW_ALARM
#define ID_WINDOW_ALARM 0
#endif
#if (defined(ID_WINDOW_FLASHLIGHT) && defined(TCFG_UI_ENABLE_FLASHLIGHT) && (!TCFG_UI_ENABLE_FLASHLIGHT))
#undef ID_WINDOW_FLASHLIGHT
#define ID_WINDOW_FLASHLIGHT 0
#endif
#if (defined(ID_WINDOW_FINDPHONE) && defined(TCFG_UI_ENABLE_FINDPHONE) && (!TCFG_UI_ENABLE_FINDPHONE))
#undef ID_WINDOW_FINDPHONE
#define ID_WINDOW_FINDPHONE 0
#endif
#if (defined(ID_WINDOW_WEATHER) && defined(TCFG_UI_ENABLE_WEATHER) && (!TCFG_UI_ENABLE_WEATHER))
#undef ID_WINDOW_WEATHER
#define ID_WINDOW_WEATHER 0
#endif
#if (defined(ID_WINDOW_MESS) && defined(TCFG_UI_ENABLE_NOTICE) && (!TCFG_UI_ENABLE_NOTICE))
#undef ID_WINDOW_MESS
#define ID_WINDOW_MESS 0
#endif
#if (defined(ID_WINDOW_ALTIMETER) && defined(TCFG_UI_ENABLE_ALTIMETER) && (!TCFG_UI_ENABLE_ALTIMETER))
#undef ID_WINDOW_ALTIMETER
#define ID_WINDOW_ALTIMETER 0
#endif
#if (defined(ID_WINDOW_BARO) && defined(TCFG_UI_ENABLE_PRESSURE) && (!TCFG_UI_ENABLE_PRESSURE))
#undef ID_WINDOW_BARO
#define ID_WINDOW_BARO 0
#endif
#if (defined(ID_WINDOW_SPORT_INFO) && defined(TCFG_UI_ENABLE_SPORT_INFO) && (!TCFG_UI_ENABLE_SPORT_INFO))
#undef ID_WINDOW_SPORT_INFO
#define ID_WINDOW_SPORT_INFO 0
#endif
#if (defined(ID_WINDOW_BLOOD_OXYGEN) && defined(TCFG_UI_ENABLE_OXYGEN) && (!TCFG_UI_ENABLE_OXYGEN))
#undef ID_WINDOW_BLOOD_OXYGEN
#define ID_WINDOW_BLOOD_OXYGEN 0
#endif
#if (defined(ID_WINDOW_SPORT_RECORD) && defined(TCFG_UI_ENABLE_SPORTRECORD) && (!TCFG_UI_ENABLE_SPORTRECORD))
#undef ID_WINDOW_SPORT_RECORD
#define ID_WINDOW_SPORT_RECORD 0
#endif
#if (defined(ID_WINDOW_TRAIN) && defined(TCFG_UI_ENABLE_TRAIN) && (!TCFG_UI_ENABLE_TRAIN))
#undef ID_WINDOW_TRAIN
#define ID_WINDOW_TRAIN 0
#undef ID_WINDOW_SPORT_SHOW
#define ID_WINDOW_SPORT_SHOW 0
#endif
#if (defined(ID_WINDOW_BREATH_TRAIN) && defined(TCFG_UI_ENABLE_BREATH_TRAIN) && (!TCFG_UI_ENABLE_BREATH_TRAIN))
#undef ID_WINDOW_BREATH_TRAIN
#define ID_WINDOW_BREATH_TRAIN 0
#endif
#if (defined(ID_WINDOW_PRESSURE) && defined(TCFG_UI_ENABLE_HEAT) && (!TCFG_UI_ENABLE_HEAT))
#undef ID_WINDOW_PRESSURE
#define ID_WINDOW_PRESSURE 0
#endif
#if (defined(ID_WINDOW_HEART) && defined(TCFG_UI_ENABLE_HEART) && (!TCFG_UI_ENABLE_HEART))
#undef ID_WINDOW_HEART
#define ID_WINDOW_HEART 0
#endif
#if (defined(ID_WINDOW_SLEEP) && defined(TCFG_UI_ENABLE_SLEEP) && (!TCFG_UI_ENABLE_SLEEP))
#undef ID_WINDOW_SLEEP
#define ID_WINDOW_SLEEP 0
#endif
#if (defined(ID_WINDOW_CALL_CHANNEL_SEL) && defined(TCFG_APP_CAT1_EN) && (!TCFG_APP_CAT1_EN))
#undef ID_WINDOW_CALL_CHANNEL_SEL
#define ID_WINDOW_CALL_CHANNEL_SEL 0
#endif
#endif // #if ((CONFIG_UI_STYLE == STYLE_JL_WTACH) || (CONFIG_UI_STYLE == STYLE_JL_WTACH_NEW))
#endif
@@ -0,0 +1,152 @@
#ifndef _UI_SYS_PARAM__H_
#define _UI_SYS_PARAM__H_
#include "ui/ui_api.h"
#define MAX_CARD_SELECT (16)
#define MAX_CARD_BACKUP_SELECT (14)
#if (defined(CONFIG_UI_STYLE_JL_CSC_PUBLIC_MODLS_ENABLE))
#define LANGUAGE_NUM (16)
#else
#define LANGUAGE_NUM (4)
#endif
#define SYS_PARAM_NUM (30)
#define TCFG_MOTO_PWM_H (80)
#define TCFG_MOTO_PWM_L (30)
#define TCFG_MOTO_PWM_NULL (0)
#define POWERON_PASSWORD_LEN (5)
#define MAX_LIGHTLEVEL (5)
#define MIN_LIGHTLEVEL (0)
#define UI_LIGHT_LEVEL_MAX (10)
#define UI_LIGHT_LEVEL_MIN (1)
enum {
UI_PAGE_LIST_DEL,
UI_PAGE_LIST_ADD,
UI_PAGE_LIST_MOVE,
};
enum {
CardSetNum,
LightLevel,
DarkTime,
ShortcutKey,
LastSysVol,
LightAlwayEn,
LightTime,
AllDayUndisturbEn,
TimeUndisturbEn,
UndisturbStimeH,
UndisturbStimeM,
UndisturbEtimeH,
UndisturbEtimeM,
TrainAutoEn,
ConnNewPhone,
Language,
MenuStyle,
MotoMode,
twenty_four_time, // 24小时制
move_mode, // 转场动画
raise_hand_screen_on, // 抬手亮屏
screen_off_dial, // 熄屏表盘
bed_light, // 床头灯
health_tips, // 健康提醒
low_power_mode, // 省电模式
curr_sel_dial, // 当前表盘
shortcut_info_sel, //快捷
smartwin_en, //灵动岛使能
LastDarkTime, // 恢复上次熄屏时长
LastLightLevel, // 恢复上次亮度
};
struct sys_param {
u8 label;
int value;
};
struct sys_vm_param {
u8 valid;
u8 card_select[MAX_CARD_SELECT];
struct sys_param sys_param_table[SYS_PARAM_NUM];
};
struct set_info {
int show_layout;
u8 last_card_set_num;
u8 card[MAX_CARD_BACKUP_SELECT];
u8 vlist_card_index[4];
u8 vslider_percent;
/* u8 last_shake_level_sel; */
u8 make_sure;
};
struct password_t { // 用于密码的设置
u8 is_password_open;
u8 index;
u8 status;
u8 time_cnt;
u32 timer_id;
char final_password[POWERON_PASSWORD_LEN]; // 保存的密码
char password[POWERON_PASSWORD_LEN]; // 用于键盘输入
char new_password[POWERON_PASSWORD_LEN]; // 用于保存暂存的新密码
};
extern struct set_info set;
extern struct sys_vm_param ui_sys_param;
int write_UIInfo_to_vm(void *info);
int read_UIInfo_from_vm();
void erase_UIInfo_in_vm();
void restore_sys_settings();
void set_ui_sys_param(u8 label, int value);
int get_ui_sys_param(u8 label);
void ui_set_dark_time(u8 sel);
void screen_light_alway_switch(u8 on);
int get_light_level();
void ui_ajust_light(u8 level);
void ui_set_voice(int precent);
int ui_voice_to_percent(s8 volume);
void ui_volume_up(u8 step);
void ui_volume_down(u8 step);
void ui_voice_mute(u8 en);
u8 ui_get_voice_mute(void);
void ui_set_voice_mute(u8 en);
void ui_page_list_update(u32 *id_list, u8 num);
void ui_moto_init(int gpio);
void ui_moto_set_H_L(u8 mode);
void ui_moto_run(u8 run_mode);
void watch_reboot_or_shutdown(u8 flag, u8 erase);
int ui_check_list_tyep(int page_id);
u8 ui_show_minus();
u8 ui_show_plus();
u8 ui_show_shortcut_key();
bool ui_show_menu_check_win(int win_id);
int ui_show_menu_get_index(int *out_win_id);
bool ui_show_menu_force(void);
bool ui_show_menu_sw(int idx);
bool ui_show_menu_page();
bool ui_show_menu_list();
int ui_get_card_anim_by_idex(int index);
bool ui_card_anim_sw(int idx);
bool ui_card_anim_next();
u8 ui_key_shutdown_or_reboot(u8 flag);
int sys_check_time_is_undisturb(void);
int ui_show_menu_total_num(void);
#if (defined(CONFIG_UI_STYLE_JL_CSC_PUBLIC_MODLS_ENABLE))
void csc_set_ui_language_type(u8 index);
u8 csc_get_ui_language_type(void);
#endif
#endif
@@ -0,0 +1,22 @@
#ifndef __WATCH_SYSCFG_MANAGE_H__
#define __WATCH_SYSCFG_MANAGE_H__
struct watch_syscfg_operataions {
const char *name;
int (*read)(void);
int (*write)(void *priv);
};
#define SYSCFG_WRITE_ERASE_STATUS ((void *)-1)
#define REGISTER_WATCH_SYSCFG(node) \
const struct watch_syscfg_operataions node sec(.watch_syscfg)
void watch_syscfg_read(const char *name);
void watch_syscfg_write(const char *name, void *arg);
void watch_syscfg_read_all();
void watch_syscfg_write_all(void *p);
#endif