diff --git a/Global/Global.c b/Global/Global.c index 77c3d8e..6d5c144 100644 --- a/Global/Global.c +++ b/Global/Global.c @@ -43,10 +43,10 @@ const LEBEL_UI UI_Label[] = { // 4�����ӣ���ȫ�����ͼ���֣� Fader_t faders[4] = { - { 40-10, 60, 30, 200, 7, 0, 0, "\xB0\xE9\xD7\xE0" }, // 0: ����(MIX) - { 95-10, 60, 30, 200, 7, 1, 0, "\xCF\xD2" }, // 1: ��(STR) - { 150-10, 60, 30, 200, 7, 2, 0, "\xC2\xF3" }, // 2: ��(MIC) - { 205-10, 60, 30, 200, 7, 3, 0, "\xC2\xF3\xBB\xEC\xCF\xEC" } // 3: �����(REV) + { 150-15, 35, 30, 215, 7, 0, 0, "\xB0\xE9\xD7\xE0" }, /* 0: MIX 伴奏 slot2 */ + { 90-15, 35, 30, 215, 7, 1, 0, "\xCF\xD2" }, /* 1: STR 吉他 slot1 */ + { 30-15, 35, 30, 215, 7, 2, 0, "\xC2\xF3" }, /* 2: MIC slot0 */ + { 210-15, 35, 30, 215, 7, 3, 0, "\xC2\xF3\xBB\xEC\xCF\xEC" } /* 3: REV 人声效果 slot3 */ }; @@ -75,10 +75,9 @@ const Touch_AreaTypeDef Touch_Areas[] = { 165, 220, 220, 270, 0, 3, GUI_PLAY_SECTION, NULL }, /* 底栏 TAB:万能/普通/专业/设置(Value=目标 TAB) */ - { 0, 60, 275, 319, 0, 0, GUI_TAB_INDEX, NULL }, - { 60, 120, 275, 319, 0, 2, GUI_TAB_INDEX, NULL }, - { 120, 180, 275, 319, 0, 1, GUI_TAB_INDEX, NULL }, - { 180, 239, 275, 319, 0, 3, GUI_TAB_INDEX, NULL }, + { 0, 79, 280, 319, 0, 0, GUI_NAV_BAR, NULL }, + { 80, 159, 280, 319, 0, 1, GUI_NAV_BAR, NULL }, + { 160, 239, 280, 319, 0, 2, GUI_NAV_BAR, NULL }, }; int16_t MIC_VOL_MAP[10]= {-9000,-7000,-5000,-3000,-1000,1000,3000,5000,7000,9000}; diff --git a/Global/Global.h b/Global/Global.h index f23f7aa..4693e6b 100644 --- a/Global/Global.h +++ b/Global/Global.h @@ -112,6 +112,7 @@ typedef enum { GUI_AUTOBAND_SW, GUI_BL_SW, GUI_TAB_LAST_INDEX, + GUI_NAV_BAR, /* 0902 底栏导航:Value 0=设置/返回 1=调音台 2=模式选择 */ }GUIID; diff --git a/UI/UI_Idle.c b/UI/UI_Idle.c index 3cc42d5..29eb314 100644 --- a/UI/UI_Idle.c +++ b/UI/UI_Idle.c @@ -24,61 +24,31 @@ static uint8_t s_mode_select_focus = 0; extern bool InModeFlag; -static void UI_DrawModeSelectButton(uint16_t y, const uint8_t *row, uint8_t focused); -static void UI_ModeSelect_DrawButtons(void); +/* 0902 设计稿:整行位图(背景+图标+文字+箭头)存外部 Flash,222x84 */ +#define UI0902_MODE_ROW_X 9 +#define UI0902_MODE_ROW_W 222 +#define UI0902_MODE_ROW_H 84 +#define UI0902_MODE_ROW_Y0 30 +#define UI0902_MODE_ROW_DY 86 -void UI_ReturnToModeSelect(void) +static const uint32_t s_mode_row_addr[3][2] = { + { UI0902_ROW_UNIVERSAL_NOT_ADDR, UI0902_ROW_UNIVERSAL_SEL_ADDR }, /* 0 万能 */ + { UI0902_ROW_NORMAL_NOT_ADDR, UI0902_ROW_NORMAL_SEL_ADDR }, /* 1 普通 */ + { UI0902_ROW_EXPERT_NOT_ADDR, UI0902_ROW_EXPERT_SEL_ADDR }, /* 2 专业 */ +}; + +static void UI_DrawModeSelectButton(uint16_t y, uint8_t idx, uint8_t focused) { - StartFlag = 0; - InModeFlag = false; - AutoBandTop1_Stop(); - s_mode_select_focus = 0; - CallUI_Idle(); - UI_DrawModeSelectScreen(); -} - -/* 0831 美工试用图:图标+MiSans 文字整行位图 */ -static void UI_DrawModeSelectButton(uint16_t y, const uint8_t *row, uint8_t focused) -{ - const uint16_t btn_w = 220; - const uint16_t btn_h = 87; - const uint16_t btn_r = 10; - const uint16_t btn_x = (240 - btn_w) / 2; - const uint16_t row_x = (uint16_t)(btn_x + (btn_w - UI_MODE0831_ROW_W) / 2); - const uint16_t row_y = (uint16_t)(y + (btn_h - UI_MODE0831_ROW_H) / 2); - - if (focused) - { - LCD_FillRoundRectGradient(btn_x, y, btn_w, btn_h, btn_r, - START_COLOR, END_COLOR); - } - else - { - LCD_FillRoundRect(btn_x, y, btn_w, btn_h, btn_r, COLOR_NORMAL_BG); - } - - LCD_WR_PIC_Trans(row_x, row_y, UI_MODE0831_ROW_W, UI_MODE0831_ROW_H, row, BLACK); + LCD_WR_PIC_FROM_FLASH(UI0902_MODE_ROW_X, y, UI0902_MODE_ROW_W, UI0902_MODE_ROW_H, + s_mode_row_addr[idx][focused ? 1 : 0]); } static void UI_ModeSelect_DrawButtonAt(uint8_t idx) { - switch (idx) - { - case 0: - UI_DrawModeSelectButton(40, gImage_Mode0831_Universal_Row_180_52, - s_mode_select_focus == 0); - break; - case 1: - UI_DrawModeSelectButton(132, gImage_Mode0831_Normal_Row_180_52, - s_mode_select_focus == 1); - break; - case 2: - UI_DrawModeSelectButton(224, gImage_Mode0831_Expert_Row_180_52, - s_mode_select_focus == 2); - break; - default: - break; - } + if (idx > 2) + return; + UI_DrawModeSelectButton((uint16_t)(UI0902_MODE_ROW_Y0 + idx * UI0902_MODE_ROW_DY), + idx, s_mode_select_focus == idx); } static void UI_ModeSelect_SetFocus(uint8_t idx) @@ -106,16 +76,20 @@ void UI_DrawModeSelectScreen(void) UI_ClearFocus(); pCurrentTouch_Area = Touch_ModeSelect_Areas; - LCD_FillByColor(0, 0, 240, 320, BLACK); + LCD_FillByColor(0, 0, 240, 320, UI0902_BG_COLOR); label_top(); UI_ModeSelect_DrawButtons(); + Draw_Bottom_Bar(UI0902_NAV_MODE, 0); } const Touch_AreaTypeDef Touch_ModeSelect_Areas[] = { /* Flag=按钮序号(0万能/1普通/2专业);ID=进入 TAB */ - { 0, 239, 38, 127, 0, 0, 0, NULL }, - { 0, 239, 128, 219, 1, 0, 2, NULL }, - { 0, 239, 220, 311, 2, 0, 1, NULL }, + { 9, 231, 30, 114, 0, 0, 0, NULL }, + { 9, 231, 116, 200, 1, 0, 2, NULL }, + { 9, 231, 202, 286, 2, 0, 1, NULL }, + /* 底栏导航:设置 / 调音台(模式选择即本页) */ + { 0, 79, 287, 319, 0, UI0902_NAV_SETTING, GUI_NAV_BAR, NULL }, + { 80, 159, 287, 319, 0, UI0902_NAV_MIXER, GUI_NAV_BAR, NULL }, }; #define TOUCH_AREA_MODE_SELECT_NUM (sizeof(Touch_ModeSelect_Areas)/sizeof(Touch_AreaTypeDef)) @@ -245,6 +219,13 @@ void IdleProcess(DisplayTaskMessage_Type msg) msg.LoByte >= Touch_ModeSelect_Areas[k].y_min && msg.LoByte <= Touch_ModeSelect_Areas[k].y_max ) { hit = 1U; + if (Touch_ModeSelect_Areas[k].ID == GUI_NAV_BAR) { + if (Touch_ModeSelect_Areas[k].Value == UI0902_NAV_SETTING) + MenuPage_Setting_Proc(); + else if (Touch_ModeSelect_Areas[k].Value == UI0902_NAV_MIXER) + MenuPage_Mixer_Proc(); + break; + } uint8_t row = (uint8_t)Touch_ModeSelect_Areas[k].Flag; LOG_I("UI", "mode_select hit area=%u row=%u focus=%u x=%u y=%u", (unsigned)k, (unsigned)row, (unsigned)s_mode_select_focus, @@ -313,7 +294,7 @@ void IdleProcess(DisplayTaskMessage_Type msg) else if (vol <= 95) level = 3; else if (vol <= 115) level = 4; else level = 5; - Draw_Volume_Bar(5, 5, level, 1, WHITE, GRAY); + Draw_Volume_Bar(55, 3, level, 1, WHITE, GRAY); uint8_t mMasterSysExVolume[12] = { 0xF0, 0x41, 0x00, 0x42, 0x12, 0x40, 0x00, 0x04, 0x64, 0x00, 0x00,0xF7}; memset(mMasterSysExVolume+8,msg.ID,1); SendMidiDataToDreamDSP(mMasterSysExVolume,12); diff --git a/UI/UI_Mixer.c b/UI/UI_Mixer.c index c5f7ae7..d6e232e 100644 --- a/UI/UI_Mixer.c +++ b/UI/UI_Mixer.c @@ -1,43 +1,37 @@ #include "includes.h" extern const Touch_AreaTypeDef *pCurrentTouch_Area; static int8_t s_mixer_focus = -1; -// ==================== ��ť���� ==================== -#define BTN_Y 275 // ��ť��ʼY -#define BTN_H 40 // ��ť�߶� -#define BTN_W 105 // ��ť��� -#define BTN_G 5 // ������ť�м��� -// ==================== �������� ==================== -const Touch_AreaTypeDef Touch_Btn[] = { - { 0, 50, 0, 50, 0, 0, 0, NULL }, +/* / ̨(ҳ) / ģʽѡ */ +const Touch_AreaTypeDef Touch_Mixer_Areas[] = { + { 0, 79, 280, 319, 0, UI0902_NAV_SETTING, GUI_NAV_BAR, NULL }, + { 80, 159, 280, 319, 0, UI0902_NAV_MIXER, GUI_NAV_BAR, NULL }, + { 160, 239, 280, 319, 0, UI0902_NAV_MODE, GUI_NAV_BAR, NULL }, }; -#define TOUCH_BTN_NUM (sizeof(Touch_Btn)/sizeof(Touch_AreaTypeDef)) - - - +#define TOUCH_BTN_NUM (sizeof(Touch_Mixer_Areas)/sizeof(Touch_AreaTypeDef)) +/* ÿ·ӵֱǩⲿ Flash ͼƬid0 id1 id2 MIC id3 Ч */ +static const uint32_t s_fader_label[4][3] = { /* addr, w, h */ + { UI0902_TXT_MIXER_BAND_ADDR, UI0902_TXT_MIXER_BAND_W, UI0902_TXT_MIXER_BAND_H }, + { UI0902_TXT_MIXER_GUITAR_ADDR, UI0902_TXT_MIXER_GUITAR_W, UI0902_TXT_MIXER_GUITAR_H }, + { UI0902_TXT_MIXER_MIC_ADDR, UI0902_TXT_MIXER_MIC_W, UI0902_TXT_MIXER_MIC_H }, + { UI0902_TXT_MIXER_VOCALFX_ADDR, UI0902_TXT_MIXER_VOCALFX_W, UI0902_TXT_MIXER_VOCALFX_H }, +}; // ============================================================ -// 完整绘制推子(首次初始化 / 页面切换时调用) +// ӣ״γʼ / ҳлʱã // ============================================================ void DrawFader(Fader_t *f) { - uint16_t x = f->x, y = f->y, w = f->w, h = f->h; - // 清除整个推子区域 - LCD_FillByColor(x - 10, y, x + w + 10, y + h, BLACK); - // 绘制完整槽背景 - DrawFaderGrooveAt(f, y + 5, y + 5 + h); - // 刻度线 - for (int i = 0; i < 10; i++) { - uint16_t tick_y = y + 7 + (h * i) / 10; - LCD_DrawLine(x + w / 2 - 3, tick_y, x + w / 2 + 3, tick_y, FADER_TEXT); - } - // 底部文字 - LCD_ShowChinese_AutoAlign(x + 10, x + (w / 2) - 8, y + h + 20, - (uint8_t*)f->name, LCD_ALIGN_CENTER, FADER_TEXT, BLACK, 0, 12); - // 画滑块并记录位置 - uint16_t slider_y = CalcSliderY(f); + uint16_t cx = f->x + f->w / 2; + uint16_t slider_y; + LCD_FillByColor(cx - 20, f->y, cx + 20, f->y + f->h + 30, UI0902_BG_COLOR); + LCD_WR_PIC_FROM_FLASH(cx - 15, f->y, 31, 215, UI0902_MIXER_TRACK_ADDR); + LCD_WR_PIC_FROM_FLASH_Trans(cx - s_fader_label[f->id][1] / 2, f->y + f->h + 8, + (uint16_t)s_fader_label[f->id][1], (uint16_t)s_fader_label[f->id][2], + s_fader_label[f->id][0]); + slider_y = CalcSliderY(f); DrawFaderSlider(f, slider_y); f->prev_slider_y = slider_y; } @@ -45,8 +39,6 @@ void DrawFader(Fader_t *f) void DrawAllFaders(void) { NvmParam_Type * nvm = drv_nvm_param_ptr(); - // 鍏堟竻鏁翠釜鎺ㄥ瓙鍖哄煙锛屽交搴曟秷闄ゆ畫锟? - //LCD_FillByColor(0, 35, 240, 320, BLACK); for (int i = 0; i < 4; i++) { DrawFader(&faders[i]); } @@ -70,85 +62,31 @@ void DrawAllFaders(void) } // ============================================================ -// 绘制推子槽背景局部区域(y_start ~ y_end 范围) -// RED/CYAN 用 FillRoundRect_Solid 自带圆角 -// GREEN 覆盖 RED 底部圆角,YELLOW 覆盖 CYAN 顶部圆角 -// ============================================================ -static void DrawFaderGrooveAt(Fader_t *f, uint16_t y_start, uint16_t y_end) -{ - if (y_start >= y_end) return; - uint16_t x = f->x, y = f->y, w = f->w, h = f->h; - uint16_t groove_top = y + 5; - uint16_t groove_bot = y + 5 + h; - const uint16_t r = 15; - // 裁剪到槽边界 - if (y_start < groove_top) y_start = groove_top; - if (y_end > groove_bot) y_end = groove_bot; - if (y_start >= y_end) return; - // 1. 灰色底色(纯矩形) - LCD_FillByColor(x, y_start, x + w, y_end, BLACK); - // 2. 青色段 — FillRoundRect_Solid 自带底部圆角 - { uint16_t s = groove_top + 100, e = groove_top + h; - if (y_start < e && y_end > s) { - FillRoundRect_Solid(x, s, w, e - s, r, 0x3fAE); - } } - // 3. 黄色段 — 纯矩形,覆盖青色顶部圆角 - { uint16_t s = groove_top + 100 - 33, e = groove_top + 100 + 16; - if (y_start < e && y_end > s) { - uint16_t ys = y_start > s ? y_start : s; - uint16_t ye = y_end < e ? y_end : e; - LCD_FillByColor(x, ys, x + w, ye, YELLOW); - } } - // 4. 红色段 — FillRoundRect_Solid 自带顶部圆角 - { uint16_t s = groove_top, e = groove_top + 49; - if (y_start < e && y_end > s) { - FillRoundRect_Solid(x, s, w, e - s, r, RED); - } } - // 5. 绿色段 — 纯矩形,覆盖红色底部圆角 - { uint16_t s = groove_top + 100 - 66, e = groove_top + 100 - 32; - if (y_start < e && y_end > s) { - uint16_t ys = y_start > s ? y_start : s; - uint16_t ye = y_end < e ? y_end : e; - LCD_FillByColor(x, ys, x + w, ye, RGB(21,40,7)); - } } - // 6. 脏区域内的刻度线 - for (int i = 0; i < 10; i++) { - uint16_t tick_y = y + 7 + (h * i) / 10; - if (tick_y >= y_start && tick_y <= y_end) { - LCD_DrawLine(x + w / 2 - 3, tick_y, x + w / 2 + 3, tick_y, FADER_TEXT); - } - } -} -// ============================================================ -// 仅绘制滑块 + 数值文字(用于增量刷新) -// 滑块尺寸和文字位置与原版完全一致 +// ƻ飨ɫťͼƬ+ ֵ + » // ============================================================ static void DrawFaderSlider(Fader_t *f, uint16_t slider_y) { - uint16_t x = f->x, w = f->w, slider_h = 20; - uint16_t bg = (s_mixer_focus == (int8_t)f->id) ? COLOR_PRIMARY : COLOR_NORMAL_BG; + uint16_t cx = f->x + f->w / 2; + uint16_t ly = f->y + f->h + 8; char buf[8]; - LCD_FillRoundRect(x+5, slider_y, w-10, slider_h, 5, bg); + LCD_WR_PIC_FROM_FLASH_Trans(cx - 15, slider_y, 30, 24, UI0902_MIXER_KNOB_ADDR); sprintf(buf, "%d", f->val); - LCD_ShowString_AutoAlign(x, x + w, slider_y, (uint8_t*)buf, LCD_ALIGN_CENTER, FADER_TEXT, bg, 0, 15); + LCD_ShowString_AutoAlign(cx - 15, cx + 15, slider_y + 5, (uint8_t*)buf, + LCD_ALIGN_CENTER, 0x1905, WHITE, 0, 11); + LCD_FillByColor(cx - 15, ly + 17, cx + 15, ly + 19, UI0902_BG_COLOR); + if (s_mixer_focus == (int8_t)f->id) + LCD_FillByColor(cx - 15, ly + 17, cx + 15, ly + 19, COLOR_PRIMARY); } + // ============================================================ -// 完整重绘滑块(槽背景 + 刻度线 + 滑块) +// λñ仯ػٻ飨Ϊⲿ Flash ͼƬ // ============================================================ static void UpdateFaderSlider(Fader_t *f) { - uint16_t x = f->x, y = f->y, w = f->w, h = f->h; + uint16_t cx = f->x + f->w / 2; uint16_t new_y = CalcSliderY(f); if (f->prev_slider_y == new_y) return; - // 完整重绘整个推子槽区域 - LCD_FillByColor(x - 10, y, x + w + 10, y + h, BLACK); - DrawFaderGrooveAt(f, y + 5, y + 5 + h); - // 刻度线 - for (int i = 0; i < 10; i++) { - uint16_t tick_y = y + 7 + (h * i) / 10; - LCD_DrawLine(x + w / 2 - 3, tick_y, x + w / 2 + 3, tick_y, FADER_TEXT); - } - // 画滑块 + LCD_WR_PIC_FROM_FLASH(cx - 15, f->y, 31, 215, UI0902_MIXER_TRACK_ADDR); DrawFaderSlider(f, new_y); f->prev_slider_y = new_y; } @@ -168,14 +106,13 @@ void UpdateFaderByTouch(int idx, uint16_t y) } uint16_t y_min = f->y; uint16_t y_max = f->y + f->h; - if (y < y_min + 8) { // 闈犺繎椤堕儴 鈫?鐩存帴10 + if (y < y_min + 8) { f->val = 10; } - else if (y > y_max - 8) { // 闈犺繎搴曢儴 鈫?鐩存帴0 + else if (y > y_max - 8) { f->val = 0; } else { - // 姝e父璁$畻 int32_t val_raw = 10 - ((int32_t)(y - y_min) * 10) / (y_max - y_min); if(val_raw < 0) val_raw = 0; if(val_raw > 10) val_raw = 10; @@ -183,10 +120,8 @@ void UpdateFaderByTouch(int idx, uint16_t y) } UpdateFaderSlider(f); DrawFaderSlider(f, f->prev_slider_y); - // 闊抽噺杈撳嚭 switch(idx) { case 0: - // MIX 閫氶亾 val_127 = (f->val * 127) / 10; SendVolumeChangeMidiEvent(1,val_127); SendVolumeChangeMidiEvent(2,val_127); @@ -205,29 +140,24 @@ void UpdateFaderByTouch(int idx, uint16_t y) SendVolumeChangeMidiEvent(15,val_127); break; case 1: - // STR 寮︿箰閫氶亾 STR_val = (f->val * 127) / 10; SendVolumeChangeMidiEvent(0,STR_val); break; case 2: - // MIC 楹﹀厠椋庨€氶亾 AW816_Set_Volume(MIC_VOL_MAP[f->val]); break; case 3: - // REV 娣峰搷閫氶亾 - // 鍦ㄨ繖閲屽啓娣峰搷鎺у埗 AW816_Set_Reverb(f->val * 10); break; } } - // ============================================================ -// 计算滑块Y坐标(根据val值 0~10) +// 㻬Y꣨valֵ 0~10 // ============================================================ static uint16_t CalcSliderY(Fader_t *f) { - uint16_t slider_h = 16; + uint16_t slider_h = 24; uint16_t fill_h = (f->val * f->h) / 10; if (fill_h > f->h) fill_h = f->h; uint16_t slider_y = f->y + f->h - fill_h - (slider_h / 2); @@ -236,39 +166,10 @@ static uint16_t CalcSliderY(Fader_t *f) return slider_y; } -// ============================================================ -// 绘制实心圆角矩形(用 FillByColor 逐行填充圆弧区域) -// 身体填充比 LCD_FillRoundRect 多延伸 1 像素,消除缝隙 -// ============================================================ -static void FillRoundRect_Solid(uint16_t x, uint16_t y, uint16_t w, uint16_t h, uint16_t r, uint16_t color) -{ - if (r > w / 2) r = w / 2; - if (r > h / 2) r = h / 2; - if (r == 0) { LCD_FillByColor(x, y, x + w, y + h, color); return; } - // 身体填充(中间 + 左右两侧直边) - LCD_FillByColor(x + r, y, x + w - r, y + h, color); - LCD_FillByColor(x, y + r, x + r, y + h - r, color); - LCD_FillByColor(x + w - r, y + r, x + w, y + h - r, color); - // 4 个圆弧角:从圆心向边缘逐行填充实心行 - for (uint16_t dy = 0; dy < r; dy++) { - // dx = floor(sqrt(r² - (r-dy)²)) = floor(sqrt(2*r*dy - dy²)) - uint16_t d = 2 * r * dy - dy * dy; - uint16_t dx = 0; - while ((dx + 1) * (dx + 1) <= d) dx++; - // 填充从 x+r-dx 到 x+r+1(+1确保dx=0时覆盖中心像素) - LCD_FillByColor(x + r - dx, y + dy, x + r + 1, y + dy + 1, color); // 顶左角 - LCD_FillByColor(x + w - r, y + dy, x + w - r + dx + 1, y + dy + 1, color); // 顶右角 - LCD_FillByColor(x + r - dx, y + h - 1 - dy, x + r + 1, y + h - dy, color); // 底左角 - LCD_FillByColor(x + w - r, y + h - 1 - dy, x + w - r + dx + 1, y + h - dy, color); // 底右角 - } -} - - int CheckTouchFader(uint16_t x, uint16_t y) { for (int i = 0; i < 4; i++) { Fader_t *f = &faders[i]; - // 鎵╁ぇ瑙︽懜鍖哄煙锛屾彁鍗囨嫋鍔ㄤ綋锟? if (x >= f->x - 10 && x <= f->x + f->w + 10 && y >= f->y && y <= f->y + f->h) { return i; @@ -277,19 +178,20 @@ int CheckTouchFader(uint16_t x, uint16_t y) return -1; } -// ==================== ��ʼ�� ==================== +// ==================== ʼ ==================== void UI_Mixer_Init(void) { s_mixer_focus = -1; UI_ClearFocus(); -// LCD_WR_REG(0x28); // Display OFF - UI_DrawTop_TiaoYinTai(); + LCD_FillByColor(0, 0, 240, 320, UI0902_BG_COLOR); + LCD_ShowChinese_AutoAlign(0, 240, 8, (uint8_t*)"\xB5\xF7\xD2\xF4\xCC\xA8", + LCD_ALIGN_CENTER, WHITE, UI0902_BG_COLOR, 0, 16); DrawAllFaders(); - pCurrentTouch_Area = Touch_Btn; -// LCD_WR_REG(0x29); // Display ON/ + Draw_Bottom_Bar(UI0902_NAV_MIXER, 0); + pCurrentTouch_Area = Touch_Mixer_Areas; } -// ==================== ����������ʵ�֣��� ==================== +// ==================== ==================== void UI_Mixer_Process(DisplayTaskMessage_Type msg) { uint16_t tx,ty; @@ -300,7 +202,7 @@ void UI_Mixer_Process(DisplayTaskMessage_Type msg) tx = msg.HiByte; ty = msg.LoByte; - // 1. �ȴ������� + // 1. ȴ fader_idx = CheckTouchFader(tx, ty); if (fader_idx >= 0) { @@ -308,16 +210,18 @@ void UI_Mixer_Process(DisplayTaskMessage_Type msg) return; } - // 2. �ٴ��� ȡ�� / ȷ�� ��ť + // 2. for(uint8_t i=0; i= Touch_Btn[i].x_min && tx <= Touch_Btn[i].x_max && - ty >= Touch_Btn[i].y_min && ty <= Touch_Btn[i].y_max ) - { - // ��ť����¼� - if(Touch_Btn[i].ID == 0) + if( tx >= Touch_Mixer_Areas[i].x_min && tx <= Touch_Mixer_Areas[i].x_max && + ty >= Touch_Mixer_Areas[i].y_min && ty <= Touch_Mixer_Areas[i].y_max ) + { + switch (Touch_Mixer_Areas[i].Value) { - MenuPage_SystemSetting_Proc(); + case UI0902_NAV_SETTING: MenuPage_Setting_Proc(); break; + case UI0902_NAV_MIXER: break; /* ҳ */ + case UI0902_NAV_MODE: UI_ReturnToModeSelect(); break; + default: break; } break; } @@ -326,21 +230,6 @@ void UI_Mixer_Process(DisplayTaskMessage_Type msg) break; case MSG_ID_EC_VOL: -// //LCD_ShowString(200, 0, Num_To_String(msg.DataU16[1],buff,3), RED, WHITE, 16, 0); -// uint8_t vol = msg.DataU16[1]; -// uint8_t level; -// if (vol <= 5) level = 0; -// else if (vol <= 35) level = 1; -// else if (vol <= 65) level = 2; -// else if (vol <= 95) level = 3; -// else if (vol <= 115) level = 4; -// else level = 5; -// //Draw_Volume_Bar(5, 5, level, 1, WHITE, GRAY); -// uint8_t mMasterSysExVolume[12] = { 0xF0, 0x41, 0x00, 0x42, 0x12, 0x40, 0x00, 0x04, 0x64, 0x00, 0x00,0xF7}; -// memset(mMasterSysExVolume+8,msg.DataU16[1],1); -// SendMidiDataToDreamDSP(mMasterSysExVolume,12); -// -// ResetAutoPowerCount(); break; } } diff --git a/UI/UI_Mixer.h b/UI/UI_Mixer.h index 08f08a8..bc2a00c 100644 --- a/UI/UI_Mixer.h +++ b/UI/UI_Mixer.h @@ -1,17 +1,12 @@ #ifndef __UI_MIXER_H__ #define __UI_MIXER_H__ - - -static void DrawFaderGrooveAt(Fader_t *f, uint16_t y_start, uint16_t y_end); static void DrawFaderSlider(Fader_t *f, uint16_t slider_y); void UpdateFaderByTouch(int idx, uint16_t y); static uint16_t CalcSliderY(Fader_t *f); -static void FillRoundRect_Solid(uint16_t x, uint16_t y, uint16_t w, uint16_t h, uint16_t r, uint16_t color); int CheckTouchFader(uint16_t x, uint16_t y); - void UI_Mixer_Init(void); void UI_Mixer_Process(DisplayTaskMessage_Type msg); -#endif \ No newline at end of file +#endif diff --git a/UI/UI_Restore.c b/UI/UI_Restore.c index 1bc59d4..9dc644f 100644 --- a/UI/UI_Restore.c +++ b/UI/UI_Restore.c @@ -1,119 +1,33 @@ #include "includes.h" -// ============================== -// 按键界面配置参数 -// ============================== -#define BTN_Y_START 115 // 按键Y轴起始坐标 -#define BTN_HEIGHT 80 // 按键高度 -#define BTN_WIDTH 220 // 按键宽度 -#define BTN_GAP 5 // 按键之间的间距 -#define BTN_RADIUS 6 // 圆角半径 - -// 按键颜色配置 -#define BTN_COLOR_CANCEL 0x4A4A // 取消按键背景色 -#define BTN_COLOR_CONFIRM 0x03B7 // 确认按键背景色 -#define BTN_TEXT_COLOR 0xFFFF // 按键字体颜色 -#define BTN_TEXT_SIZE 24 // 按键文字字号 - - +/* ============================== + * 0902 ָȷҳ + ʾ + ȷ/ȡť + + * ============================== */ extern const Touch_AreaTypeDef *pCurrentTouch_Area; const Touch_AreaTypeDef Touch_Restore_Areas[] = { - // Xmin, Xmax, Ymin, Ymax, flag, Value, ID, action - { 0, 50, 0, 50, 0, 0, 0, NULL }, - { 10, 10+BTN_WIDTH, BTN_Y_START, BTN_Y_START+BTN_HEIGHT, 0, 1, 1, NULL }, - { 10, 10+BTN_WIDTH, BTN_Y_START, BTN_Y_START+BTN_HEIGHT, 0, 2, 0, NULL }, - + // Xmin, Xmax, Ymin, Ymax, flag, Value, ID, action + { 13, 119, 185, 241, 0, 0, 1, NULL }, /* ȷ */ + { 121, 227, 185, 241, 0, 0, 2, NULL }, /* ȡ */ + { 0, 79, 280, 319, 0, 0, 0, NULL }, /* */ + { 80, 159, 280, 319, 0, 1, GUI_NAV_BAR, NULL }, /* ̨ */ + { 160, 239, 280, 319, 0, 2, GUI_NAV_BAR, NULL }, /* ģʽѡ */ }; -#define TOUCH_AREA_SYSTEMSETTING_NUM (sizeof(Touch_Restore_Areas)/sizeof(Touch_AreaTypeDef)) - -void UI_Draw_Buttons(void) -{ -// LCD_FillByColor(10, 270, 220, 320, BLACK); - LCD_FillRoundRect( - 10, - BTN_Y_START, - BTN_WIDTH, - BTN_HEIGHT, - BTN_RADIUS, - BTN_COLOR_CANCEL - ); - LCD_ShowChinese_AutoAlign( - 10, 10 + BTN_WIDTH, - BTN_Y_START + (BTN_HEIGHT - BTN_TEXT_SIZE)/2, - (uint8_t*)"\xC8\xB7\xB6\xA8\x00", - LCD_ALIGN_CENTER, - BTN_TEXT_COLOR, - BTN_COLOR_CANCEL, - 0, - BTN_TEXT_SIZE - ); - - LCD_FillRoundRect( - 10, - BTN_Y_START+BTN_HEIGHT+BTN_GAP, - BTN_WIDTH, - BTN_HEIGHT, - BTN_RADIUS, - BTN_COLOR_CONFIRM - ); - LCD_ShowChinese_AutoAlign( - 10, 10 + BTN_WIDTH, - BTN_Y_START + BTN_HEIGHT + (BTN_HEIGHT - BTN_TEXT_SIZE)/2, - (uint8_t*)"\xC8\xB1\xCF\xF8\x00", - LCD_ALIGN_CENTER, - BTN_TEXT_COLOR, - BTN_COLOR_CONFIRM, - 0, - BTN_TEXT_SIZE - ); -} - -#define TOP_TITLE_X1 0 -#define TOP_TITLE_X2 240 -#define TOP_TITLE_Y1 0 -#define TOP_TITLE_Y2 35 -#define TOP_TITLE_BG_COLOR BLACK // ����ɫ -#define TOP_TITLE_TEXT_COLOR WHITE // ������ɫ -#define TOP_TITLE_FONT_SIZE 13 // 标题字号 -#define TOP_TITLE_ALIGN LCD_ALIGN_CENTER // ���� - -// ============================== -// ��ʾ�������⣺����̨ -// ============================== -void UI_DrawTop_Restore(void) -{ - //const uint16_t btn_color = /*DARKLGRAY*/0x2988; // 深灰�????? - - // ��ˢ��ɫ���� - //LCD_FillByColor(TOP_TITLE_X1, TOP_TITLE_Y1, TOP_TITLE_X2, TOP_TITLE_Y2, TOP_TITLE_BG_COLOR); - LCD_FillByColor(0, 0, 240, 320, TOP_TITLE_BG_COLOR); - //LCD_DrawLine(0, 30, 240, 30, btn_color); - - LCD_WR_PIC(10,0 ,40,31,gImage_Return); - - // ��ʾ������̨�����С�16���֣� - LCD_ShowChinese_AutoAlign( - TOP_TITLE_X1, TOP_TITLE_X2, // �������� - TOP_TITLE_Y1 + (TOP_TITLE_Y2 - TOP_TITLE_Y1 - TOP_TITLE_FONT_SIZE)/2, // ��ֱ���� - (uint8_t*)"\xBB\xD6\xB8\xB4\xB3\xF6\xB3\xA7\xC9\xE8\xD6\xC3", // ����̨ - TOP_TITLE_ALIGN, - TOP_TITLE_TEXT_COLOR, - TOP_TITLE_BG_COLOR, - 0, - TOP_TITLE_FONT_SIZE - ); -} +#define TOUCH_AREA_RESTORE_NUM (sizeof(Touch_Restore_Areas)/sizeof(Touch_AreaTypeDef)) void UI_Restore_Select_Init(void) { -// LCD_WR_REG(0x28); // Display OFF - UI_DrawTop_Restore(); - UI_Draw_Buttons(); + UI_ClearFocus(); + LCD_FillByColor(0, 0, 240, 320, UI0902_BG_COLOR); + LCD_ShowChinese_AutoAlign(0, 240, 8, (uint8_t*)"\xBB\xD6\xB8\xB4\xB3\xF6\xB3\xA7\xC9\xE8\xD6\xC3", LCD_ALIGN_CENTER, WHITE, UI0902_BG_COLOR, 0, 16); + LCD_ShowChinese_AutoAlign(0, 240, 118, (uint8_t*)"\xC8\xB7\xC8\xCF\xBB\xD6\xB8\xB4\xB3\xF6\xB3\xA7\xC9\xE8\xD6\xC3\xA3\xAC\xBB\xD6\xB8\xB4\xBA\xF3\xCB\xF9\xD3\xD0\xC9\xE8\xD6\xC3\xBD\xAB", LCD_ALIGN_CENTER, WHITE, UI0902_BG_COLOR, 0, 12); + LCD_ShowChinese_AutoAlign(0, 240, 140, (uint8_t*)"\xC7\xE5\xB3\xFD\xB2\xA2\xD6\xD8\xC6\xF4\xA1\xA3", LCD_ALIGN_CENTER, WHITE, UI0902_BG_COLOR, 0, 12); + LCD_WR_PIC_FROM_FLASH_Trans(13, 185, 106, 56, UI0902_BTN_CONFIRM_BIG_ADDR); + LCD_WR_PIC_FROM_FLASH_Trans(121, 185, 106, 56, UI0902_BTN_CANCEL_BIG_ADDR); + Draw_Bottom_Bar(UI0902_NAV_NONE, 1); pCurrentTouch_Area = Touch_Restore_Areas; -// LCD_WR_REG(0x29); // Display ON } void UI_Restore_Select_Process(DisplayTaskMessage_Type msg) @@ -121,27 +35,38 @@ void UI_Restore_Select_Process(DisplayTaskMessage_Type msg) switch(msg.MessageType) { case MSG_ID_TOUCH : - for(uint8_t k=0; k= pCurrentTouch_Area[k].x_min && msg.HiByte <= pCurrentTouch_Area[k].x_max && - msg.LoByte >= pCurrentTouch_Area[k].y_min && + msg.LoByte >= pCurrentTouch_Area[k].y_min && msg.LoByte <= pCurrentTouch_Area[k].y_max ) { - switch(pCurrentTouch_Area[k].ID) + if (pCurrentTouch_Area[k].ID == GUI_NAV_BAR) { - case 0: - MenuPage_Setting_Proc(); - break; - case 1: - RestoreSetting(); - MenuPage_Setting_Proc(); - break; - case 2: - MenuPage_Setting_Proc(); - break; + if (pCurrentTouch_Area[k].Value == UI0902_NAV_MIXER) + MenuPage_Mixer_Proc(); + else if (pCurrentTouch_Area[k].Value == UI0902_NAV_MODE) + UI_ReturnToModeSelect(); + } + else + { + switch(pCurrentTouch_Area[k].ID) + { + case 0: + MenuPage_Setting_Proc(); + break; + case 1: + RestoreSetting(); + MenuPage_Setting_Proc(); + break; + case 2: + MenuPage_Setting_Proc(); + break; + } } ResetAutoPowerCount(); + break; } } break; diff --git a/UI/UI_Setting.c b/UI/UI_Setting.c index 0af52b8..c847ee3 100644 --- a/UI/UI_Setting.c +++ b/UI/UI_Setting.c @@ -1,35 +1,24 @@ #include "includes.h" -// ============================== -// ��ť���� -// ============================== -#define BTN_Y_START 275 // ��ť��ʼY -#define BTN_HEIGHT 40 // ��ť�߶� -#define BTN_WIDTH 105 // ��ť��� -#define BTN_GAP 5 // ������ť�м��� -#define BTN_RADIUS 6 // Բ�� - -// ��ɫ -#define BTN_COLOR_CANCEL 0x4A4A // ��ɫȡ�� -#define BTN_COLOR_CONFIRM 0x03B7 // ��ɫȷ�� -#define BTN_TEXT_COLOR 0xFFFF // ��ɫ���� -#define BTN_TEXT_SIZE 16 - +/* ============================== + * 0902 ҳ4 б/Զػ/ָ/汾Ϣ + * 214x33 46 / ̨ / ģʽѡ + * ============================== */ +#define SET_ROW_X 13 +#define SET_ROW_W 214 +#define SET_ROW_H 33 extern const Touch_AreaTypeDef *pCurrentTouch_Area; const Touch_AreaTypeDef Touch_SystemSetting_Areas[] = { // Xmin, Xmax, Ymin, Ymax, flag, Value, ID, action - { 115, 170, 110, 170, -1, 0, GUI_BLUETOOTH_SW, NULL }, - { 170, 225, 110, 170, 1, 0, GUI_BLUETOOTH_SW, NULL }, - { 115, 170, 175, 235, -1, 0, GUI_AUTOCLOSE, NULL }, - { 170, 225, 175, 235, 1, 0, GUI_AUTOCLOSE, NULL }, - { 115, 170, 240, 300, -1, 0, GUI_RESTORE, NULL }, - { 170, 225, 240, 300, 1, 0, GUI_RESTORE, NULL }, -// { 15, 15+BTN_WIDTH, BTN_Y_START, BTN_Y_START+BTN_HEIGHT, 0, 0, GUI_CANCEL, NULL }, -// { 15+BTN_WIDTH+BTN_GAP, 15+BTN_WIDTH*2+BTN_GAP, BTN_Y_START, BTN_Y_START+BTN_HEIGHT, 0, 1, GUI_CONFIRM, NULL }, - { 0, 50, 0, 50, 0, 0, 0, NULL }, + { 13, 227, 42, 75, 1, 0, GUI_BLUETOOTH_SW, NULL }, + { 13, 227, 88, 121, 1, 0, GUI_AUTOCLOSE, NULL }, + { 13, 227, 134, 167, 0, 0, GUI_RESTORE, NULL }, + { 0, 79, 280, 319, 0, UI0902_NAV_SETTING, GUI_NAV_BAR, NULL }, /* */ + { 80, 159, 280, 319, 0, UI0902_NAV_MIXER, GUI_NAV_BAR, NULL }, + { 160, 239, 280, 319, 0, UI0902_NAV_MODE, GUI_NAV_BAR, NULL }, }; #define TOUCH_AREA_SYSTEMSETTING_NUM (sizeof(Touch_SystemSetting_Areas)/sizeof(Touch_AreaTypeDef)) @@ -43,118 +32,12 @@ GUI_SWITCH mGuiData_SystemSETTING[] = { LEBEL_UI SystemSetting[] = { - {15, 230,35+10,60, (const uint8_t*)"\xB9\xCC\xBC\xFE\xB0\xE6\xB1\xBE", LCD_ALIGN_LEFT, WHITE, BLACK, 13, LCD_ALIGN_CENTER, WHITE, BLACK, 11, GUI_VERSION}, - {15, 230,95+10+5,60, (const uint8_t*)"\xC0\xB6\xD1\xC0\xC1\xB4\xBD\xD3", LCD_ALIGN_LEFT, WHITE, BLACK, 13, LCD_ALIGN_CENTER, WHITE, BLACK, 11, GUI_BLUETOOTH_SW}, - {15, 230,160+10+5,60,(const uint8_t*)"\xD7\xD4\xB6\xAF\xB9\xD8\xBB\xFA", LCD_ALIGN_LEFT, WHITE, BLACK, 13, LCD_ALIGN_CENTER, WHITE, BLACK, 11, GUI_AUTOCLOSE}, - {15, 230,225+10+5,60,(const uint8_t*)"\xBB\xD6\xB8\xB4\xB3\xF6\xB3\xA7\xC9\xE8\xD6\xC3", LCD_ALIGN_LEFT, WHITE, BLACK, 13, LCD_ALIGN_CENTER, WHITE, BLACK, 11, GUI_RESTORE}, + {SET_ROW_X, SET_ROW_W, 180, SET_ROW_H, (const uint8_t*)"\xB0\xE6\xB1\xBE\xD0\xC5\xCF\xA2", LCD_ALIGN_LEFT, WHITE, BLACK, 13, LCD_ALIGN_CENTER, WHITE, BLACK, 11, GUI_VERSION}, + {SET_ROW_X, SET_ROW_W, 42, SET_ROW_H, (const uint8_t*)"\xC0\xB6\xD1\xC0\xC9\xE8\xD6\xC3", LCD_ALIGN_LEFT, WHITE, BLACK, 13, LCD_ALIGN_CENTER, WHITE, BLACK, 11, GUI_BLUETOOTH_SW}, + {SET_ROW_X, SET_ROW_W, 88, SET_ROW_H, (const uint8_t*)"\xD7\xD4\xB6\xAF\xB9\xD8\xBB\xFA", LCD_ALIGN_LEFT, WHITE, BLACK, 13, LCD_ALIGN_CENTER, WHITE, BLACK, 11, GUI_AUTOCLOSE}, + {SET_ROW_X, SET_ROW_W, 134, SET_ROW_H, (const uint8_t*)"\xBB\xD6\xB8\xB4\xB3\xF6\xB3\xA7\xC9\xE8\xD6\xC3", LCD_ALIGN_LEFT, WHITE, BLACK, 13, LCD_ALIGN_CENTER, WHITE, BLACK, 11, GUI_RESTORE}, }; -// ============================== -// ���Ƶײ�������ť -// ============================== -void UI_Draw_Bottom_Buttons(void) -{ - LCD_FillByColor(0, 270, 240, 320, BLACK); - // ȡ����ť���� - LCD_FillRoundRect( - 15, - BTN_Y_START, - BTN_WIDTH, - BTN_HEIGHT, - BTN_RADIUS, - BTN_COLOR_CANCEL - ); - LCD_ShowChinese_AutoAlign( - 15, 15 + BTN_WIDTH, - BTN_Y_START + (BTN_HEIGHT - BTN_TEXT_SIZE)/2, - (uint8_t*)"\xC8\xB1\xCF\xF8\x00", - LCD_ALIGN_CENTER, - BTN_TEXT_COLOR, - BTN_COLOR_CANCEL, - 0, - BTN_TEXT_SIZE - ); - - // ȷ����ť���ң� - LCD_FillRoundRect( - 15 + BTN_WIDTH + BTN_GAP, - BTN_Y_START, - BTN_WIDTH, - BTN_HEIGHT, - BTN_RADIUS, - BTN_COLOR_CONFIRM - ); - LCD_ShowChinese_AutoAlign( - 15 + BTN_WIDTH + BTN_GAP, - 15 + BTN_WIDTH*2 + BTN_GAP, - BTN_Y_START + (BTN_HEIGHT - BTN_TEXT_SIZE)/2, - (uint8_t*)"\xC8\xB7\xB6\xA8\x00", - LCD_ALIGN_CENTER, - BTN_TEXT_COLOR, - BTN_COLOR_CONFIRM, - 0, - BTN_TEXT_SIZE - ); -} - -// ============================== -// �����������򣨹̶���Χ�� -// ============================== -#define TOP_TITLE_X1 0 -#define TOP_TITLE_X2 240 -#define TOP_TITLE_Y1 0 -#define TOP_TITLE_Y2 35 -#define TOP_TITLE_BG_COLOR BLACK // ����ɫ -#define TOP_TITLE_TEXT_COLOR WHITE // ������ɫ -#define TOP_TITLE_FONT_SIZE 16 // �����С -#define TOP_TITLE_ALIGN LCD_ALIGN_CENTER // ���� - -// ============================== -// ��ʾ�������⣺����̨ -// ============================== -void UI_DrawTop_TiaoYinTai(void) -{ - LCD_FillByColor(0, 0, 240, 320, TOP_TITLE_BG_COLOR); - - LCD_WR_PIC(10,0 ,40,31,gImage_Return); - - // ��ʾ������̨�����С�16���֣� - LCD_ShowChinese_AutoAlign( - TOP_TITLE_X1, TOP_TITLE_X2, // �������� - TOP_TITLE_Y1 + (TOP_TITLE_Y2 - TOP_TITLE_Y1 - TOP_TITLE_FONT_SIZE)/2, // ��ֱ���� - (uint8_t*)"\xB5\xF7\xD2\xF4\xCC\xA8", // ����̨ - TOP_TITLE_ALIGN, - TOP_TITLE_TEXT_COLOR, - TOP_TITLE_BG_COLOR, - 0, - TOP_TITLE_FONT_SIZE - ); -} - -// ============================== -// ��ʾ�������⣺ϵͳ���� -// ============================== -void UI_DrawTop_SystemSetting(void) -{ - LCD_FillByColor(0, 0, 240, 320, TOP_TITLE_BG_COLOR); - - - LCD_WR_PIC(10,0 ,40,31,gImage_Return); - // ��ʾ��ϵͳ���ã����С�16���֣� - LCD_ShowChinese_AutoAlign( - TOP_TITLE_X1, TOP_TITLE_X2, - TOP_TITLE_Y1 + (TOP_TITLE_Y2 - TOP_TITLE_Y1 - TOP_TITLE_FONT_SIZE)/2, - (uint8_t*)"\xCF\xB5\xCD\xB3\xC9\xE8\xD6\xC3", // ϵͳ���� - TOP_TITLE_ALIGN, - TOP_TITLE_TEXT_COLOR, - TOP_TITLE_BG_COLOR, - 0, - TOP_TITLE_FONT_SIZE - ); -} - - - void DrawSystemSetting(void) { Draw_System_Item_List(&SystemSetting[GUI_VERSION],&mGuiData_SystemSETTING[GUI_VERSION]); @@ -164,52 +47,57 @@ void DrawSystemSetting(void) } // ============================== -// �������� +// // ============================== void Touch_SystemSettingAction(int8_t FLAG, uint8_t ID, uint8_t areaIndex, uint8_t value) { uint16_t last_value; + (void)FLAG; (void)areaIndex; - - if(ID == 0) + if (ID == GUI_NAV_BAR) { - MenuPage_SystemSetting_Proc(); + switch (value) + { + case UI0902_NAV_SETTING: UI_GotoCurrentModePage(); break; /* صǰģʽҳ */ + case UI0902_NAV_MIXER: MenuPage_Mixer_Proc(); break; + case UI0902_NAV_MODE: UI_ReturnToModeSelect(); break; + default: break; + } + return; } - // -------------------------- - // ������ѡ�� - // -------------------------- last_value = mGuiData_SystemSETTING[ID].Current; switch(ID) { case GUI_BLUETOOTH_SW: - GUI_Item_AjustValue(&mGuiData_SystemSETTING[ID], FLAG); + mGuiData_SystemSETTING[ID].Current = !mGuiData_SystemSETTING[ID].Current; if (!UI_SetFocus(ID)) RefreshSystemSetting(last_value, &SystemSetting[ID], &mGuiData_SystemSETTING[ID]); break; case GUI_AUTOCLOSE: - GUI_Item_AjustLoopValue(&mGuiData_SystemSETTING[ID], FLAG); + GUI_Item_AjustLoopValue(&mGuiData_SystemSETTING[ID], 1); if (!UI_SetFocus(ID)) RefreshSystemSetting(last_value, &SystemSetting[ID], &mGuiData_SystemSETTING[ID]); break; case GUI_RESTORE: -// GUI_Item_AjustValue(&mGuiData_SystemSETTING[ID], FLAG); -// RefreshSystemSetting(last_value, &SystemSetting[ID], &mGuiData_SystemSETTING[ID]); MenuPage_Restore_Proc(); break; + + default: + break; } } void UI_Setting_Init(void) { UI_ClearFocus(); -// LCD_WR_REG(0x28); // Display OFF - UI_DrawTop_SystemSetting(); + LCD_FillByColor(0, 0, 240, 320, UI0902_BG_COLOR); + LCD_ShowChinese_AutoAlign(0, 240, 8, (const uint8_t*)"\xC9\xE8\xD6\xC3", LCD_ALIGN_CENTER, WHITE, UI0902_BG_COLOR, 0, 16); DrawSystemSetting(); + Draw_Bottom_Bar(UI0902_NAV_NONE, 1); pCurrentTouch_Area = Touch_SystemSetting_Areas; -// LCD_WR_REG(0x29); // Display ON } void UI_Setting_Process(DisplayTaskMessage_Type msg) @@ -222,28 +110,13 @@ void UI_Setting_Process(DisplayTaskMessage_Type msg) if( msg.HiByte >= pCurrentTouch_Area[k].x_min && msg.HiByte <= pCurrentTouch_Area[k].x_max && msg.LoByte >= pCurrentTouch_Area[k].y_min && msg.LoByte <= pCurrentTouch_Area[k].y_max ) { - Touch_SystemSettingAction(pCurrentTouch_Area[k].Flag,pCurrentTouch_Area[k].ID,k,0); + Touch_SystemSettingAction(pCurrentTouch_Area[k].Flag,pCurrentTouch_Area[k].ID,k,pCurrentTouch_Area[k].Value); ResetAutoPowerCount(); + break; } } break; case MSG_ID_EC_VOL: -// //LCD_ShowString(200, 0, Num_To_String(msg.DataU16[1],buff,3), RED, WHITE, 16, 0); -// uint8_t vol = msg.DataU16[1]; -// uint8_t level; -// if (vol <= 5) level = 0; -// else if (vol <= 35) level = 1; -// else if (vol <= 65) level = 2; -// else if (vol <= 95) level = 3; -// else if (vol <= 115) level = 4; -// else level = 5; -// //Draw_Volume_Bar(5, 5, level, 1, WHITE, GRAY); -// uint8_t mMasterSysExVolume[12] = { 0xF0, 0x41, 0x00, 0x42, 0x12, 0x40, 0x00, 0x04, 0x64, 0x00, 0x00,0xF7}; -// memset(mMasterSysExVolume+8,msg.DataU16[1],1); -// SendMidiDataToDreamDSP(mMasterSysExVolume,12); -// -// ResetAutoPowerCount(); break; } - } diff --git a/UI/UI_Setting.h b/UI/UI_Setting.h index 8dbba65..d0815e3 100644 --- a/UI/UI_Setting.h +++ b/UI/UI_Setting.h @@ -1,15 +1,10 @@ #ifndef __UI_SETTING_H__ #define __UI_SETTING_H__ - extern GUI_SWITCH mGuiData_SystemSETTING[]; extern LEBEL_UI SystemSetting[]; - -void UI_DrawTop_TiaoYinTai(void); void UI_Setting_Init(void); void UI_Setting_Process(DisplayTaskMessage_Type msg); -extern void UI_Draw_Bottom_Buttons(void); - #endif diff --git a/UI/UI_SongMode.c b/UI/UI_SongMode.c index 0f9f6bc..ea81b3b 100644 --- a/UI/UI_SongMode.c +++ b/UI/UI_SongMode.c @@ -105,7 +105,7 @@ void Draw_Tab_Mode_Menu(const LEBEL_UI *UI, GUI_SWITCH *Group) void Show_home_UI(void) { UI_ClearFocus(); - LCD_FillByColor(0,0,240,320,BLACK); + LCD_FillByColor(0,0,240,320,UI0902_BG_COLOR); label_top(); label_Tranzpose_ui(&UI_Label[GUI_TRANSPOSE], &mGuiData[GUI_TRANSPOSE]); label_Speed_ui(&UI_Label[GUI_SPEED], &mGuiData[GUI_SPEED]); @@ -298,6 +298,17 @@ void Touch_Action(int8_t FLAG, uint8_t ID, uint8_t areaIndex,uint8_t value) Refresh_SectionSelect(last_value, &UI_Label[ID], &mGuiData[ID]); return; } + else if(ID == GUI_NAV_BAR) + { + switch(value) + { + case UI0902_NAV_SETTING: MenuPage_Setting_Proc(); break; + case UI0902_NAV_MIXER: MenuPage_Mixer_Proc(); break; + case UI0902_NAV_MODE: UI_ReturnToModeSelect(); break; + default: break; + } + return; + } else if(ID==GUI_TAB_INDEX) { if(mGuiData[ID].Current != value) @@ -407,7 +418,7 @@ void UI_SongMode_Process(DisplayTaskMessage_Type msg) case MSG_ID_EC_VOL: Send_volume(msg.ID); - Draw_Volume_Bar(5, 5, msg.HiByte, 1, WHITE, GRAY); + Draw_Volume_Bar(55, 3, msg.HiByte, 1, WHITE, GRAY); break; case MSG_ID_TAP_SPEED: diff --git a/UI/UI_global.c b/UI/UI_global.c index 0dcba18..d5e46be 100644 --- a/UI/UI_global.c +++ b/UI/UI_global.c @@ -177,8 +177,9 @@ void label_top() { const uint16_t btn_color = /*DARKLGRAY*/0x2988; // 深灰�????? //LCD_FillByColor(0,0,240,25,BLACK); - //LCD_WR_PIC(5,0,12,20,gImage_bar); - Draw_Volume_Bar(8, 5, level, 1, WHITE, GRAY); + LCD_FillByColor(0, 0, 240, UI_STATUS_BAR_H, UI0902_BG_COLOR); + LCD_WR_PIC_Trans(8, 6, 20, 15, gImage_UI0902_Volume_20x15, BLACK); + Draw_Volume_Bar(55, 3, level, 1, WHITE, GRAY); LCD_DrawLine(0, 26, 240, 26, btn_color); Show_BL_Icon(mGuiData[GUI_BL_SW].Current); Show_Battery_Icon(usb_charging_state); @@ -221,25 +222,54 @@ void Refresh_TabSelect_ui(const LEBEL_UI *UI, GUI_SWITCH *Group) } } +/* 返回当前 TAB 对应的模式页(设置/调音台页的“返回”用) */ +void UI_GotoCurrentModePage(void) +{ + switch (mGuiData[GUI_TAB_INDEX].Current) + { + case 0: + ADDRESS = mGuiData[GUI_AUTOBAND_SW].Current ? 0x0009EB5F : 0x0001B8F0; + MenuPage_SongMode_Proc(); + break; + case 1: + ADDRESS = mGuiData[GUI_AUTOBAND_SW].Current ? 0x0009EB5F : 0x00000000; + MenuPage_ExpertMode_Proc(); + break; + case 2: + ADDRESS = 0x0009598F; + MenuPage_FreeMode_Proc(); + break; + default: + MenuPage_SongMode_Proc(); + break; + } +} + /* 蓝牙图标显示(占位) */ void Show_BL_Icon(uint8_t value) { if(value) { - LCD_WR_PIC(110,5,12,20,gImage_bl); + LCD_WR_PIC_Trans(36, 5, 11, 17, gImage_UI0902_Bluetooth_11x17, BLACK); } else { - LCD_WR_PIC(110,5,12,18,gImage_bl0); + LCD_FillByColor(36, 5, 47, 22, UI0902_BG_COLOR); } BSP_BlueToothPowerEnable (value); } void Draw_Status_Battery_Icon(uint8_t battery_percent) { - /* 需求图:状态栏电池始终为白色(含 USB 充电连接时) */ - Draw_Battery_Icon(UI_STATUS_BATTERY_X, UI_STATUS_BATTERY_Y, - battery_percent, 1, WHITE, BLACK, WHITE); + uint16_t fill_w; + if (battery_percent > 100) battery_percent = 100; + LCD_FillByColor(UI0902_BATTERY_X, UI0902_BATTERY_Y, + UI0902_BATTERY_X + 29, UI0902_BATTERY_Y + 12, UI0902_BG_COLOR); + fill_w = (uint16_t)((22UL * battery_percent) / 100); + LCD_WR_PIC_ClipX(UI0902_BATTERY_X + 3, UI0902_BATTERY_Y + 2, 22, 9, fill_w, + gImage_UI0902_BatteryFill_22x9); + LCD_WR_PIC_Trans(UI0902_BATTERY_X, UI0902_BATTERY_Y, 29, 12, + gImage_UI0902_BatteryOutline_29x12, BLACK); } void Show_Battery_Icon(uint8_t flag) @@ -657,70 +687,35 @@ void label_PlaySection_ui(const LEBEL_UI *UI,GUI_SWITCH * Group) Draw_Tab_Section_Menu(UI,(TAB_SECTION_INDEX)Group->Current); } +void Draw_Bottom_Bar(uint8_t sel, uint8_t first_back) +{ + const uint8_t *icon0; + const uint8_t *icon1; + const uint8_t *icon2; + uint8_t w0, w1, w2, h0, h1, h2; + + LCD_FillByColor(0, 275, 240, 320, UI0902_BG_COLOR); + + if (first_back) { icon0 = gImage_UI0902_TabBack_Not_18x28; w0 = 18; h0 = 28; } + else if (sel == 0) { icon0 = gImage_UI0902_TabSetting_Sel_36x28; w0 = 36; h0 = 28; } + else { icon0 = gImage_UI0902_TabSetting_Not_35x28; w0 = 35; h0 = 28; } + + if (sel == 1) { icon1 = gImage_UI0902_TabMixer_Sel_35x27; w1 = 35; h1 = 27; } + else { icon1 = gImage_UI0902_TabMixer_Not_18x28; w1 = 18; h1 = 28; } + + if (sel == 2) { icon2 = gImage_UI0902_TabMode_Sel_36x28; w2 = 36; h2 = 28; } + else { icon2 = gImage_UI0902_TabMode_Not_35x29; w2 = 35; h2 = 29; } + + LCD_WR_PIC_Trans(40 - w0 / 2, 288, w0, h0, icon0, BLACK); + LCD_WR_PIC_Trans(120 - w1 / 2, 288, w1, h1, icon1, BLACK); + LCD_WR_PIC_Trans(200 - w2 / 2, 288, w2, h2, icon2, BLACK); +} + void label_Tab_Select_ui(const LEBEL_UI *UI,GUI_SWITCH * Group) { - LCD_FillRoundRect(0,275,240,75,15,BLACK); - // 统一坐标(严格居中) - uint16_t x1 = 10; - uint16_t x2 = 10+40+20; - uint16_t x3 = 10+40+20+40+20; - uint16_t x4 = 10+40+20+40+20+40+20; - uint8_t TextSize = 8; - char *str1 = "\xCD\xF2\xC4\xDC\xC4\xA3\xCA\xBD\x00"; //FreeMode - char *str2 = "\xC6\xD5\xCD\xA8\xC4\xA3\xCA\xBD\x00"; //NormalMode - char *str3 = "\xD7\xA8\xD2\xB5\xC4\xA3\xCA\xBD\x00"; //ExpressMode - char *str4 = "\xC9\xE8\xD6\xC3\x00"; //Setting - uint16_t Icon_Y = 268+5; - uint16_t Text_Y = 270+30; - switch(Group->Current) - { - case 0: // 歌曲选中 - //LCD_WR_PIC(x1, 268+5,30,22,gImage_NormalMode_notSelect); - - LCD_WR_PIC(x1, Icon_Y,30,22,gImage_FreeMode_notSelect); - LCD_WR_PIC(x2, Icon_Y,30,22,gImage_NomalMode_Select); - LCD_WR_PIC(x3, Icon_Y,30,22,gImage_ExpressMode_notSelect); - LCD_WR_PIC(x4, Icon_Y,30,24,gImage_Setting_notSelect); - - // 文字:选中=蓝色,未选中=白色 - LCD_ShowChinese_AutoAlign(x1, x1+30-1, Text_Y, (const uint8_t *)str1,LCD_ALIGN_CENTER, WHITE, BLACK,0,TextSize); - LCD_ShowChinese_AutoAlign(x2, x2+30-1, Text_Y, (const uint8_t *)str2,LCD_ALIGN_CENTER, COLOR_PRIMARY, BLACK,0,TextSize); - LCD_ShowChinese_AutoAlign(x3, x3+30-1, Text_Y, (const uint8_t *)str3,LCD_ALIGN_CENTER, WHITE, BLACK,0,TextSize); - LCD_ShowChinese_AutoAlign(x4, x4+30-1, Text_Y, (const uint8_t *)str4,LCD_ALIGN_CENTER, WHITE, BLACK,0,TextSize); - break; - - case 1: // 专家选中 - LCD_WR_PIC(x1, Icon_Y,30,22,gImage_FreeMode_notSelect); - LCD_WR_PIC(x2, Icon_Y,30,22,gImage_NormalMode_notSelect); - LCD_WR_PIC(x3, Icon_Y,30,22,gImage_ExpressMode_Select); - LCD_WR_PIC(x4, Icon_Y,30,24,gImage_Setting_notSelect); - LCD_ShowChinese_AutoAlign(x1, x1+30-1, Text_Y, (const uint8_t *)str1,LCD_ALIGN_CENTER, WHITE, BLACK,0,TextSize); - LCD_ShowChinese_AutoAlign(x2, x2+30-1, Text_Y, (const uint8_t *)str2,LCD_ALIGN_CENTER, WHITE, BLACK,0,TextSize); - LCD_ShowChinese_AutoAlign(x3, x3+30-1, Text_Y, (const uint8_t *)str3,LCD_ALIGN_CENTER, COLOR_PRIMARY, BLACK,0,TextSize); - LCD_ShowChinese_AutoAlign(x4, x4+30-1, Text_Y, (const uint8_t *)str4,LCD_ALIGN_CENTER, WHITE, BLACK,0,TextSize); - break; - case 2: // 万能选中 - LCD_WR_PIC(x1, Icon_Y,30,22,gImage_FreeMode_Select); - LCD_WR_PIC(x2, Icon_Y,30,22,gImage_NormalMode_notSelect); - LCD_WR_PIC(x3, Icon_Y,30,22,gImage_ExpressMode_notSelect); - LCD_WR_PIC(x4, Icon_Y,30,24,gImage_Setting_notSelect); - LCD_ShowChinese_AutoAlign(x1, x1+30-1, Text_Y, (const uint8_t *)str1,LCD_ALIGN_CENTER, COLOR_PRIMARY, BLACK,0,TextSize); - LCD_ShowChinese_AutoAlign(x2, x2+30-1, Text_Y, (const uint8_t *)str2,LCD_ALIGN_CENTER, WHITE, BLACK,0,TextSize); - LCD_ShowChinese_AutoAlign(x3, x3+30-1, Text_Y, (const uint8_t *)str3,LCD_ALIGN_CENTER, WHITE, BLACK,0,TextSize); - LCD_ShowChinese_AutoAlign(x4, x4+30-1, Text_Y, (const uint8_t *)str4,LCD_ALIGN_CENTER, WHITE, BLACK,0,TextSize); - break; - case 3: // 设置选中 - LCD_WR_PIC(x1, Icon_Y,30,22,gImage_FreeMode_notSelect); - LCD_WR_PIC(x2, Icon_Y,30,22,gImage_NormalMode_notSelect); - LCD_WR_PIC(x3, Icon_Y,30,22,gImage_ExpressMode_notSelect); - LCD_WR_PIC(x4, Icon_Y,30,24,gImage_Setting_Select); - - LCD_ShowChinese_AutoAlign(x1, x1+30-1, Text_Y, (const uint8_t *)str1,LCD_ALIGN_CENTER, WHITE, BLACK,0,TextSize); - LCD_ShowChinese_AutoAlign(x2, x2+30-1, Text_Y, (const uint8_t *)str2,LCD_ALIGN_CENTER, WHITE, BLACK,0,TextSize); - LCD_ShowChinese_AutoAlign(x3, x3+30-1, Text_Y, (const uint8_t *)str3,LCD_ALIGN_CENTER, WHITE, BLACK,0,TextSize); - LCD_ShowChinese_AutoAlign(x4, x4+30-1, Text_Y, (const uint8_t *)str4,LCD_ALIGN_CENTER, COLOR_PRIMARY, BLACK,0,TextSize); - break; - } + (void)UI; + (void)Group; + Draw_Bottom_Bar(UI0902_NAV_NONE, 0); } @@ -939,37 +934,46 @@ void Draw_System_Item_List(const LEBEL_UI *UI, GUI_SWITCH *Group) NvmParam_Type * nvm = drv_nvm_param_ptr(); char Info[40]; uint16_t c_top, c_bot; - UI_GetFocusGrad(Group->Id, &c_top, &c_bot); - LCD_FillRoundRectGradient( - UI->x, UI->y, 220, UI->h, 5, - c_top, c_bot - ); - LCD_ShowChinese_AutoAlign_Gradient(UI->x+35,UI->x+UI->w,UI->y+UI->h/2-8,UI->p,UI->Tab_Align,UI->Tab_fc,c_top, c_bot,UI->Tab_size); + uint16_t text_y = UI->y + 10; + uint16_t val_x1 = UI->x + 120; + uint16_t val_x2 = UI->x + 190; + + if (UI_IsFocused(Group->Id)) + { + c_top = START_COLOR; + c_bot = END_COLOR; + LCD_FillRoundRectGradient(UI->x, UI->y, 214, UI->h, 8, c_top, c_bot); + } + else + { + c_top = c_bot = UI0902_ROW_BG; + LCD_FillRoundRect(UI->x, UI->y, 214, UI->h, 8, UI0902_ROW_BG); + } + + /* 行标签(MiSans 13) */ + LCD_ShowChinese_AutoAlign_Gradient(UI->x+49, UI->x+214, text_y, UI->p, LCD_ALIGN_LEFT, WHITE, c_top, c_bot, 13); + switch(Group->Id) { case GUI_VERSION: - LCD_WR_PIC(UI->x+10, UI->y+18,20,20,gImage_FimewareVection); + LCD_WR_PIC_FROM_FLASH_Trans(UI->x+12, UI->y+7, 19, 18, UI0902_ICON_SYS_VERSION_ADDR); sprintf (Info, "%d.%d.%d", Version[0], Version[1],Version[2]); - LCD_ShowString_AutoAlign_Gradient(UI->x+100,UI->x+100+110, UI->y+UI->h/2-8-5,(const uint8_t*)Info,LCD_ALIGN_CENTER, UI->Text_fc,c_top, c_bot,11); + LCD_ShowString_AutoAlign_Gradient(val_x1, val_x2, text_y+1,(const uint8_t*)Info,LCD_ALIGN_RIGHT, GRAY,c_top, c_bot,11); break; case GUI_BLUETOOTH_SW: - LCD_WR_PIC(UI->x+10, UI->y+18,20,20,gImage_BlueTooth); - LCD_DrawArrow_Left(UI->x+100+10+5, UI->y+UI->h/2-8+12-5, 12, WHITE, c_top); - LCD_DrawArrow_Right(UI->x+100+95, UI->y+UI->h/2-8+12-5, 12, WHITE, c_top); + LCD_WR_PIC_FROM_FLASH_Trans(UI->x+7, UI->y, 34, 33, UI0902_ICON_SET_BLUETOOTH_ADDR); if(Group->Current) { - LCD_ShowChinese_AutoAlign_Gradient(UI->x+100,UI->x+100+110, UI->y+UI->h/2-8-5,(const uint8_t*)"\xBF\xAA",LCD_ALIGN_CENTER, UI->Text_fc,c_top, c_bot,11); + LCD_ShowChinese_AutoAlign_Gradient(val_x1, val_x2, text_y+1,(const uint8_t*)"\xBF\xAA",LCD_ALIGN_RIGHT, GRAY,c_top, c_bot,11); }else { - LCD_ShowChinese_AutoAlign_Gradient(UI->x+100,UI->x+100+110, UI->y+UI->h/2-8-5,(const uint8_t*)"\xB9\xD8",LCD_ALIGN_CENTER, UI->Text_fc,c_top, c_bot,11); + LCD_ShowChinese_AutoAlign_Gradient(val_x1, val_x2, text_y+1,(const uint8_t*)"\xB9\xD8",LCD_ALIGN_RIGHT, GRAY,c_top, c_bot,11); } BSP_BlueToothPowerEnable (Group->Current); mGuiData[GUI_BL_SW].Current = Group->Current; break; case GUI_AUTOCLOSE: - LCD_DrawArrow_Left(UI->x+100+10+5, UI->y+UI->h/2-8+12-5, 12, WHITE, c_top); - LCD_DrawArrow_Right(UI->x+100+95, UI->y+UI->h/2-8+12-5, 12, WHITE, c_top); - LCD_WR_PIC(UI->x+10, UI->y+18,20,20,gImage_AutoClose); + LCD_WR_PIC_FROM_FLASH_Trans(UI->x+7, UI->y, 33, 34, UI0902_ICON_SET_GEAR_ADDR); switch(Group->Current) { case 0:AutoCloseTime = 5;mAutoPowerOffCount = AutoCloseTime * 60;break; @@ -980,26 +984,20 @@ void Draw_System_Item_List(const LEBEL_UI *UI, GUI_SWITCH *Group) if(Group->Current != 3) { sprintf (Info, "%d",AutoCloseTime); -// uint16_t x = LCD_ShowChinese_AutoAlign(UI->x+100,UI->x+100+110, UI->y+UI->h/2-8-5,(const uint8_t*)"\xB7\xD6\xD6\xD3",LCD_ALIGN_CENTER, UI->Text_fc,UI->Text_bc,0,24); -// LCD_ShowString_AutoAlign(UI->x+100,UI->x+100+110, UI->y+UI->h/2-8-5,(const uint8_t*)Info,LCD_ALIGN_CENTER, UI->Text_fc,UI->Text_bc,0,24); - LCD_ShowString(UI->x+100+20,UI->y+UI->h/2-8-5, (uint8_t *)Info, UI->Text_fc, UI->Text_bc, 11, 1); - LCD_ShowChineseString(UI->x+100+20+25, UI->y+UI->h/2-8-5,(uint8_t*)"\xB7\xD6\xD6\xD3", UI->Text_fc,UI->Text_bc,11,1); + LCD_ShowString_AutoAlign_Gradient(val_x1, val_x2-28, text_y+1, (const uint8_t*)Info, LCD_ALIGN_RIGHT, GRAY, c_top, c_bot, 11); + LCD_ShowChinese_AutoAlign_Gradient(val_x2-26, val_x2, text_y+1, (const uint8_t*)"\xB7\xD6\xD6\xD3", LCD_ALIGN_RIGHT, GRAY, c_top, c_bot, 11); }else { - LCD_ShowChinese_AutoAlign(UI->x+100,UI->x+100+110, UI->y+UI->h/2-8-5,(uint8_t*)"\xB9\xD8",LCD_ALIGN_CENTER, UI->Text_fc,UI->Text_bc,1,11); - } - - if(nvm->param.AutoCloseTime != Group->Current) - { - nvm->param.AutoCloseTime = Group->Current; + LCD_ShowChinese_AutoAlign_Gradient(val_x1, val_x2, text_y+1,(uint8_t*)"\xB9\xD8",LCD_ALIGN_RIGHT, GRAY, c_top, c_bot, 11); } + nvm->param.AutoCloseTime = Group->Current; + drv_nvm_save_to_flash(); break; case GUI_RESTORE: - LCD_WR_PIC(UI->x+10, UI->y+18,20,20,gImage_Restore); - LCD_DrawChevron_Right(UI->x+100+95, UI->y+30, 15, 3, WHITE); + LCD_WR_PIC_FROM_FLASH_Trans(UI->x+13, UI->y+6, 13, 21, UI0902_ICON_SYS_RESTORE_ADDR); break; - default: - break; + default: break; } + /* 右侧箭头 */ + LCD_WR_PIC_FROM_FLASH_Trans(UI->x+197, UI->y+8, 10, 18, UI0902_ICON_CHEVRON_ADDR); } - diff --git a/UI/UI_global.h b/UI/UI_global.h index a7be73c..c3fceb4 100644 --- a/UI/UI_global.h +++ b/UI/UI_global.h @@ -28,6 +28,15 @@ void CallUI_RestoreSelect(void); #define UI_STATUS_BAR_H 26 +/* 0902 设计稿配色与底栏导航 */ +#define UI0902_BG_COLOR 0x0042 /* #000813 页面背景 */ +#define UI0902_ROW_BG 0x2147 /* #242B3A 列表行背景 */ +#define UI0902_BATTERY_X 203 +#define UI0902_BATTERY_Y 7 +#define UI0902_NAV_SETTING 0 /* 底栏位0:设置(设置页内为返回) */ +#define UI0902_NAV_MIXER 1 /* 底栏位1:调音台 */ +#define UI0902_NAV_MODE 2 /* 底栏位2:模式选择 */ +#define UI0902_NAV_NONE 0xFF /* 电量组在 Draw_Battery_Icon 内按右对齐重算;此值为允许的最左起点 */ #define UI_STATUS_BATTERY_X 150 #define UI_STATUS_BATTERY_H 11 @@ -45,6 +54,8 @@ void Show_Battery_Icon(uint8_t flag); void Show_BL_Icon(uint8_t value); void Draw_Tab_Section_Menu(const LEBEL_UI *UI, TAB_SECTION_INDEX select_tab); +void Draw_Bottom_Bar(uint8_t sel, uint8_t first_back); +void UI_GotoCurrentModePage(void); void GET_Num_Str(int16_t NUM, uint8_t ValidLen, char* Str, uint8_t hasSign); void show_Param(const LEBEL_UI *UI, GUI_SWITCH *Group); diff --git a/device/LCD_ILI9341/Drv_ILI9341_Lcd_App.c b/device/LCD_ILI9341/Drv_ILI9341_Lcd_App.c index 1310271..548aab4 100644 --- a/device/LCD_ILI9341/Drv_ILI9341_Lcd_App.c +++ b/device/LCD_ILI9341/Drv_ILI9341_Lcd_App.c @@ -221,6 +221,42 @@ void LCD_WR_PIC_FROM_FLASH(uint16_t x, uint16_t y, uint16_t length, uint16_t wid } } +/* 只绘制图片左侧 clip_w 列(电池电量按百分比裁剪) */ +void LCD_WR_PIC_ClipX(uint16_t x, uint16_t y, uint16_t full_w, uint16_t h, + uint16_t clip_w, const uint8_t data[]) +{ + uint16_t row; + if (clip_w == 0 || full_w == 0 || h == 0) return; + if (clip_w > full_w) clip_w = full_w; + LCD_SetWindow(x, y, x + clip_w - 1, y + h - 1); + LCD_DC_Set(); + for (row = 0; row < h; row++) + { + LCD_SPI_Write(data + (uint32_t)row * full_w * 2, (uint32_t)clip_w * 2); + } +} + +/* 从W25Q128读小图到RAM后透明显示(跳过近黑像素),仅用于 <=4KB 小图 */ +#define PIC_TRANS_BUF_SIZE 4096 +void LCD_WR_PIC_FROM_FLASH_Trans(uint16_t x, uint16_t y, uint16_t length, uint16_t width, uint32_t flash_addr) +{ + static uint8_t s_trans_buf[PIC_TRANS_BUF_SIZE]; + uint32_t total_bytes = (uint32_t)length * width * 2; + uint32_t i; + if (total_bytes == 0 || total_bytes > PIC_TRANS_BUF_SIZE) return; + W25Q128_Read(s_trans_buf, flash_addr, (uint16_t)total_bytes); + for (i = 0; i < total_bytes / 2; i++) + { + uint16_t c = (uint16_t)((s_trans_buf[i * 2] << 8) | s_trans_buf[i * 2 + 1]); + uint8_t r5 = (uint8_t)((c >> 11) & 0x1F); + uint8_t g6 = (uint8_t)((c >> 5) & 0x3F); + uint8_t b5 = (uint8_t)(c & 0x1F); + if (r5 <= 1 && g6 <= 2 && b5 <= 2) + continue; + LCD_DrawPoint((uint16_t)(x + (i % length)), (uint16_t)(y + (i / length)), c); + } +} + /****************************************************************************** 函数说明:在指定区域填充颜色 入口数据:xsta,ysta 起始坐标 diff --git a/device/LCD_ILI9341/Drv_ILI9341_Lcd_App.h b/device/LCD_ILI9341/Drv_ILI9341_Lcd_App.h index a0a37a8..00fbb7a 100644 --- a/device/LCD_ILI9341/Drv_ILI9341_Lcd_App.h +++ b/device/LCD_ILI9341/Drv_ILI9341_Lcd_App.h @@ -29,6 +29,12 @@ extern void LCD_WR_PIC(uint16_t x, uint16_t y, uint16_t length, uint16_t width, extern void LCD_WR_PIC_Trans(uint16_t x, uint16_t y, uint16_t length, uint16_t width, const uint8_t data[], uint16_t key_color); extern void LCD_WR_PIC_FROM_FLASH(uint16_t x, uint16_t y, uint16_t length, uint16_t width, uint32_t flash_addr); +extern void LCD_WR_PIC_ClipX(uint16_t x, uint16_t y, uint16_t full_w, uint16_t h, + uint16_t clip_w, const uint8_t data[]); +extern void LCD_WR_PIC_FROM_FLASH_Trans(uint16_t x, uint16_t y, uint16_t length, uint16_t width, uint32_t flash_addr); +extern void LCD_WR_PIC_ClipX(uint16_t x, uint16_t y, uint16_t full_w, uint16_t h, + uint16_t clip_w, const uint8_t data[]); +extern void LCD_WR_PIC_FROM_FLASH_Trans(uint16_t x, uint16_t y, uint16_t length, uint16_t width, uint32_t flash_addr); extern void LCD_DrawPoint(uint16_t x, uint16_t y, uint16_t color); //在指定位置画一个点 extern void LCD_DrawLine(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, uint16_t color); //在指定位置画一条线 extern void LCD_DrawRectangle(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, uint16_t color); //在指定位置画一个矩形 diff --git a/device/LCD_ILI9341/Drv_ILI9341_Lcd_Image_UI0902.c b/device/LCD_ILI9341/Drv_ILI9341_Lcd_Image_UI0902.c new file mode 100644 index 0000000..20db55b --- /dev/null +++ b/device/LCD_ILI9341/Drv_ILI9341_Lcd_Image_UI0902.c @@ -0,0 +1,1036 @@ +#include "Drv_ILI9341_Lcd_Image_UI0902.h" + +/* Auto-generated by tools/gen_ui0902_assets.py. Do not hand-edit. */ + +const unsigned char gImage_UI0902_BatteryOutline_29x12[696] = { /* 29x12 RGB565 BE */ +0x00,0x00,0x5B,0x0D,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18, +0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18, +0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18, +0xC6,0x18,0xA5,0x14,0x10,0xA3,0x00,0x21,0x00,0x00,0x21,0x04,0xFF,0xFF,0xD6,0x9A, +0x84,0x31,0x84,0x31,0x84,0x31,0x84,0x31,0x84,0x31,0x84,0x31,0x84,0x31,0x84,0x31, +0x84,0x31,0x84,0x31,0x84,0x31,0x84,0x31,0x84,0x31,0x84,0x31,0x84,0x31,0x84,0x31, +0x84,0x31,0x84,0x31,0x84,0x31,0x84,0x31,0x84,0x31,0x94,0x93,0xFF,0xFF,0xA5,0x14, +0x00,0x42,0x00,0x00,0x42,0x08,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x42,0x00,0x00,0x42,0x08, +0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x42,0x00,0x00,0x42,0x08,0xFF,0xFF,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xD6,0x9A, +0x10,0x82,0x42,0x08,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0x42,0x08,0x42,0x08,0xFF,0xFF, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0xFF,0xFF,0x42,0x08,0x42,0x08,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF7,0x9E,0x21,0x04, +0x42,0x08,0xFF,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x21,0x26,0x00,0x00,0x42,0x08,0xFF,0xFF,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x42,0x00,0x00,0x29,0x86,0xFF,0xFF,0xA5,0x14,0x42,0x29,0x42,0x29,0x42,0x29, +0x42,0x29,0x42,0x29,0x42,0x29,0x42,0x29,0x42,0x29,0x42,0x29,0x42,0x29,0x42,0x29, +0x42,0x29,0x42,0x29,0x42,0x29,0x42,0x29,0x42,0x29,0x42,0x29,0x42,0x29,0x42,0x29, +0x42,0x29,0x42,0x29,0x52,0xAB,0xF7,0x9E,0xB5,0x96,0x00,0x42,0x00,0x00,0x00,0x00, +0xA5,0x14,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, +0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, +0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, +0xE7,0x1C,0x31,0xA7,0x00,0x42,0x00,0x00, +}; + +const unsigned char gImage_UI0902_Volume_20x15[600] = { /* 20x15 RGB565 BE */ +0x00,0x00,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21, +0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21, +0x00,0x21,0x19,0x04,0x3A,0x08,0x00,0x00,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0xC6,0x39,0xF7,0x9E,0x29,0x66, +0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0xF7,0x9E,0xF7,0x9E,0x39,0xE8,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x9C,0xF3,0x8C,0x72,0x08,0xA3,0x00,0x42,0xF7,0x9E,0xF7,0x9E,0x39,0xE8, +0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0xCE,0x79,0xCE,0x79,0x31,0xC8, +0x00,0x42,0xF7,0x9E,0xF7,0x9E,0x39,0xE8,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x42,0x49,0x31,0xA7,0x00,0x42, +0x00,0x42,0xCE,0x79,0xCE,0x79,0x31,0xC8,0x00,0x42,0xF7,0x9E,0xF7,0x9E,0x39,0xE8, +0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x19,0x05,0x9C,0xD3,0x9C,0xD3,0x00,0x42,0x00,0x42,0xCE,0x79,0xCE,0x79,0x31,0xC8, +0x00,0x42,0xF7,0x9E,0xF7,0x9E,0x39,0xE8,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x21,0x66,0x9C,0xD3,0x9C,0xD3,0x00,0x42, +0x00,0x42,0xCE,0x79,0xCE,0x79,0x31,0xC8,0x00,0x42,0xF7,0x9E,0xF7,0x9E,0x39,0xE8, +0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x21,0x25,0x84,0x10,0x5A,0xCB,0x00,0x42, +0x21,0x66,0x9C,0xD3,0x9C,0xD3,0x00,0x42,0x00,0x42,0xCE,0x79,0xCE,0x79,0x31,0xC8, +0x00,0x42,0xF7,0x9E,0xF7,0x9E,0x39,0xE8,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42, +0x42,0x29,0x84,0x10,0x84,0x10,0x00,0x42,0x21,0x66,0x9C,0xD3,0x9C,0xD3,0x00,0x42, +0x00,0x42,0xCE,0x79,0xCE,0x79,0x31,0xC8,0x00,0x42,0xF7,0x9E,0xF7,0x9E,0x39,0xE8, +0x10,0xA3,0x42,0x49,0x10,0xC4,0x00,0x42,0x42,0x29,0x84,0x10,0x84,0x10,0x00,0x42, +0x21,0x66,0x9C,0xD3,0x9C,0xD3,0x00,0x42,0x00,0x42,0xCE,0x79,0xCE,0x79,0x31,0xC8, +0x00,0x42,0xF7,0x9E,0xF7,0x9E,0x39,0xE8,0x31,0xA6,0x63,0x2C,0x4A,0x6A,0x00,0x42, +0x42,0x29,0x84,0x10,0x84,0x10,0x00,0x42,0x21,0x66,0x9C,0xD3,0x9C,0xD3,0x00,0x42, +0x00,0x42,0xCE,0x79,0xCE,0x79,0x31,0xC8,0x00,0x42,0xF7,0x9E,0xF7,0x9E,0x39,0xE8, +0x31,0xA6,0x63,0x2C,0x4A,0x6A,0x00,0x42,0x42,0x29,0x84,0x10,0x84,0x10,0x00,0x42, +0x21,0x66,0x9C,0xD3,0x9C,0xD3,0x00,0x42,0x00,0x42,0xCE,0x79,0xCE,0x79,0x31,0xC8, +0x00,0x42,0xF7,0x9E,0xF7,0x9E,0x39,0xE8,0x31,0xA6,0x63,0x2C,0x4A,0x6A,0x00,0x42, +0x42,0x29,0x84,0x10,0x7B,0xCF,0x00,0x42,0x21,0x66,0x9C,0xD3,0x9C,0xD3,0x00,0x42, +0x00,0x42,0xCE,0x79,0xCE,0x79,0x31,0xC8,0x00,0x42,0xE7,0x3C,0xF7,0x9E,0x39,0xE8, +0x10,0xA3,0x31,0xA7,0x10,0xC3,0x00,0x21,0x08,0x62,0x42,0x08,0x21,0x66,0x00,0x21, +0x00,0x21,0x4A,0x6A,0x39,0xE8,0x00,0x21,0x00,0x21,0x84,0x10,0x73,0xAF,0x00,0x21, +0x00,0x21,0x5A,0xEC,0x94,0xD3,0x08,0x82, +}; + +const unsigned char gImage_UI0902_Bluetooth_11x17[374] = { /* 11x17 RGB565 BE */ +0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x52,0xAB,0xFF,0xFF,0x63,0x2D,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x84,0x31, +0xFF,0xFF,0xFF,0xFF,0x94,0x93,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x21,0x00,0x42, +0x00,0x42,0x00,0x42,0x84,0x31,0xFF,0xFF,0xF7,0x9E,0xFF,0xFF,0xA5,0x14,0x00,0x42, +0x00,0x21,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x84,0x31,0xFF,0xFF,0x52,0xAB, +0xD6,0x9A,0xFF,0xFF,0xA5,0x14,0x00,0x21,0x84,0x10,0xFF,0xFF,0x63,0x2D,0x00,0x42, +0x84,0x31,0xFF,0xFF,0x42,0x29,0x10,0xA4,0xF7,0x9E,0xFF,0xFF,0x42,0x08,0x31,0xA7, +0xF7,0x9E,0xFF,0xFF,0x63,0x2D,0x84,0x31,0xFF,0xFF,0x42,0x29,0xA5,0x14,0xFF,0xFF, +0xD6,0x9A,0x10,0x83,0x00,0x21,0x31,0xA7,0xF7,0x9E,0xFF,0xFF,0xF7,0x9E,0xFF,0xFF, +0xE7,0x1C,0xFF,0xFF,0xD6,0x9A,0x10,0xA4,0x00,0x21,0x00,0x21,0x00,0x42,0x21,0x26, +0xD6,0x9A,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xC6,0x18,0x10,0xA4,0x00,0x42,0x00,0x21, +0x00,0x21,0x00,0x42,0x00,0x42,0x21,0x26,0xFF,0xFF,0xFF,0xFF,0xE7,0x1C,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x21,0x00,0x42,0x31,0xA7,0xD6,0x9A,0xFF,0xFF, +0xFF,0xFF,0xFF,0xFF,0xD6,0x9A,0x10,0xA4,0x00,0x42,0x00,0x21,0x00,0x21,0x31,0xA7, +0xF7,0x9E,0xFF,0xFF,0xE7,0x1C,0xFF,0xFF,0xD6,0x9A,0xFF,0xFF,0xD6,0x9A,0x10,0xA4, +0x00,0x21,0x31,0xA7,0xF7,0x9E,0xFF,0xFF,0x63,0x2D,0x84,0x31,0xFF,0xFF,0x42,0x29, +0xA5,0x14,0xFF,0xFF,0xD6,0x9A,0x10,0x83,0x4A,0x8B,0xFF,0xFF,0x63,0x2D,0x00,0x42, +0x84,0x31,0xFF,0xFF,0x42,0x29,0x10,0xA4,0xF7,0x9E,0xFF,0xFF,0x5B,0x0C,0x00,0x21, +0x00,0x42,0x00,0x42,0x00,0x42,0x84,0x31,0xFF,0xFF,0x52,0xAB,0xD6,0x9A,0xFF,0xFF, +0xA5,0x14,0x00,0x21,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x84,0x31,0xFF,0xFF, +0xFF,0xFF,0xFF,0xFF,0xA5,0x14,0x00,0x42,0x00,0x21,0x00,0x21,0x00,0x42,0x00,0x42, +0x00,0x42,0x84,0x31,0xFF,0xFF,0xFF,0xFF,0x84,0x31,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x63,0x2D,0xC6,0x18,0x63,0x2D,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x21, +}; + +const unsigned char gImage_UI0902_BatteryFill_22x9[396] = { /* 22x9 RGB565 BE */ +0x00,0x00,0x10,0x83,0x4A,0x8A,0x4A,0x8A,0x21,0x05,0x00,0x21,0x00,0x21,0x00,0x21, +0x10,0x83,0x4A,0x8A,0x00,0x21,0x00,0x21,0x00,0x21,0x10,0x83,0x42,0x08,0x10,0x83, +0x00,0x21,0x00,0x21,0x10,0x83,0x42,0x08,0x10,0x83,0x00,0x00,0x21,0x25,0xF7,0x9E, +0xFF,0xFF,0xFF,0xFF,0xF7,0x9E,0x21,0x26,0x00,0x42,0x73,0xAF,0xF7,0x9E,0xFF,0xFF, +0xE7,0x1C,0x52,0xAB,0x21,0x26,0xF7,0x9E,0xFF,0xFF,0xF7,0x9E,0x21,0x26,0x00,0x42, +0xA5,0x14,0xF7,0x9E,0x10,0xA4,0x00,0x00,0x73,0x8E,0xFF,0xFF,0x31,0xA7,0x21,0x26, +0xFF,0xFF,0x84,0x31,0x21,0x26,0xFF,0xFF,0xC6,0x18,0x31,0xA7,0xD6,0x9A,0xF7,0x9E, +0x73,0xAF,0xD6,0x9A,0x00,0x42,0xD6,0x9A,0x73,0xAF,0x52,0xAB,0xFF,0xFF,0x52,0xAB, +0x00,0x42,0x00,0x00,0x4A,0x8B,0xFF,0xFF,0x63,0x2D,0x52,0xAB,0xFF,0xFF,0x63,0x2D, +0x52,0xAB,0xFF,0xFF,0x42,0x29,0x00,0x42,0x73,0xAF,0xFF,0xFF,0x63,0x4D,0xFF,0xFF, +0xA5,0x14,0xFF,0xFF,0x42,0x29,0xF7,0x9E,0x94,0x93,0x00,0x42,0x00,0x42,0x00,0x00, +0x00,0x21,0xD6,0x9A,0xFF,0xFF,0xFF,0xFF,0xE7,0x1C,0x00,0x42,0x84,0x31,0xFF,0xFF, +0x10,0xA4,0x00,0x42,0x42,0x29,0xFF,0xFF,0x42,0x29,0x52,0xAB,0x84,0x31,0x52,0xAB, +0xC6,0x18,0xD6,0x9A,0x10,0xA4,0x00,0x42,0x00,0x42,0x00,0x00,0x73,0x8E,0xFF,0xFF, +0x73,0xAF,0x63,0x2D,0xF7,0x9E,0x84,0x31,0x73,0xAF,0xFF,0xFF,0x31,0xA7,0x00,0x42, +0x42,0x29,0xFF,0xFF,0x42,0x29,0x00,0x42,0x00,0x42,0x73,0xAF,0xFF,0xFF,0x63,0x2D, +0xE7,0x1C,0xF7,0x9E,0x94,0x93,0x00,0x00,0xC6,0x18,0xC6,0x18,0x00,0x42,0x00,0x42, +0xC6,0x18,0xD6,0x9A,0x42,0x29,0xFF,0xFF,0x52,0xAB,0x00,0x42,0x84,0x31,0xFF,0xFF, +0x21,0x26,0x00,0x42,0x31,0xA7,0xFF,0xFF,0x84,0x31,0xB5,0x96,0xB5,0x96,0x63,0x2D, +0xFF,0xFF,0x10,0x82,0x8C,0x92,0xFF,0xFF,0x94,0x93,0x84,0x31,0xFF,0xFF,0xA5,0x14, +0x00,0x42,0xF7,0x9E,0xF7,0x9E,0x94,0x93,0xFF,0xFF,0xC6,0x18,0x00,0x42,0x10,0xA4, +0xD6,0x9A,0xC6,0x18,0x00,0x42,0xA5,0x14,0xC6,0x18,0x73,0xAF,0xFF,0xFF,0x10,0x82, +0x10,0xA3,0xA5,0x14,0xF7,0x9E,0xF7,0x9E,0xB5,0x96,0x10,0xA4,0x00,0x42,0x10,0xA4, +0xA5,0x14,0xF7,0x9E,0x84,0x31,0x10,0xA4,0x00,0x42,0x63,0x2D,0xC6,0x18,0x21,0x26, +0x00,0x42,0x10,0xA4,0xB5,0x96,0xC6,0x18,0x63,0x2D,0x00,0x00, +}; + +const unsigned char gImage_UI0902_TabSetting_Sel_36x28[2016] = { /* 36x28 RGB565 BE */ +0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x31,0xA7, +0xC6,0x18,0xFF,0xFF,0xFF,0xFF,0xE7,0x1C,0x52,0xAB,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x31,0xA7,0xF7,0x9E,0xF7,0x9E,0x84,0x31,0xB5,0x96,0xF7,0x9E, +0xFF,0xFF,0x42,0x29,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0xB5,0x96,0xF7,0x9E, +0x10,0xA4,0x00,0x42,0x00,0x42,0x10,0xA4,0xF7,0x9E,0xA5,0x14,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0xFF,0xFF,0x94,0x93,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x63,0x2D,0xFF,0xFF,0x21,0x26,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0xFF,0xFF,0x84,0x31, +0x42,0x29,0x42,0x29,0x63,0x2D,0x42,0x29,0x42,0x29,0xFF,0xFF,0x42,0x29,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x10,0xA4,0x73,0xAF,0xFF,0xFF,0xA5,0x14,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, +0xA5,0x14,0xFF,0xFF,0x94,0x93,0x10,0xA4,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x52,0xAB,0xF7,0x9E,0xFF,0xFF,0xD6,0x9A,0x5B,0x0C, +0x52,0xAB,0x42,0x29,0x42,0x29,0x52,0xAB,0x4A,0x8B,0xD6,0x9A,0xFF,0xFF,0xF7,0x9E, +0x52,0xAB,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x21,0x26,0xF7,0x9E, +0xD6,0x9A,0x21,0x26,0xB5,0x96,0xD6,0x9A,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x94,0x93,0xE7,0x1C,0x10,0xA4,0xA5,0x14,0xFF,0xFF,0x52,0xAB,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x94,0x93,0xF7,0x9E,0x10,0xA4,0x00,0x42,0x73,0xAF,0xFF,0xFF, +0x31,0xA7,0x00,0x42,0x00,0x42,0x10,0xA4,0xF7,0x9E,0xA5,0x14,0x00,0x42,0x00,0x42, +0xE7,0x1C,0xD6,0x9A,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0xC6,0x18,0xD6,0x9A, +0x00,0x42,0x00,0x42,0x10,0xA4,0xF7,0x9E,0xD6,0x9A,0x00,0x42,0x00,0x42,0x84,0x31, +0xFF,0xFF,0x31,0xA7,0x00,0x42,0x00,0x42,0x84,0x31,0xFF,0xFF,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0xC6,0x18,0xFF,0xFF,0x00,0x42,0x00,0x42,0x00,0x42,0x63,0x2D, +0xFF,0xFF,0x94,0x93,0x52,0xAB,0xFF,0xFF,0x94,0x93,0x00,0x42,0x00,0x42,0x00,0x42, +0x84,0x31,0xFF,0xFF,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x84,0x31,0xFF,0xFF, +0x63,0x2D,0x00,0x42,0x00,0x42,0x00,0x42,0x94,0x93,0x9C,0xF4,0xF7,0x9E,0xD6,0x9A, +0x10,0xA4,0x00,0x42,0x00,0x42,0x10,0xA4,0xE7,0x1C,0xB5,0x96,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x10,0xA4,0xF7,0x9E,0xFF,0xFF,0xB5,0x96,0x42,0x29,0x52,0xAB, +0xC6,0x18,0xFF,0xFF,0xE7,0x1C,0x94,0x93,0x84,0x31,0x84,0x31,0x84,0x31,0xD6,0x9A, +0xFF,0xFF,0x42,0x29,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x31,0xA7, +0xC6,0x18,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF7,0x9E,0x84,0x31,0x42,0x29,0xB5,0x96, +0xFF,0xFF,0xFF,0xFF,0xF7,0x9E,0xB5,0x96,0x42,0x29,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x21,0x26,0x42,0x29,0x31,0xA7, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x31,0xA7,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x00,0x84,0x31,0x84,0x31,0x84,0x31, +0x84,0x31,0x84,0x31,0x84,0x31,0x84,0x31,0x84,0x31,0x00,0x42,0x21,0x26,0xF7,0x9E, +0x84,0x31,0x10,0xA4,0xC6,0x18,0x42,0x29,0x63,0x2D,0x52,0xAB,0x00,0x42,0x84,0x31, +0x84,0x31,0x42,0x29,0xD6,0x9A,0x73,0xAF,0xD6,0x9A,0x73,0xAF,0x21,0x26,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x42,0x29,0xC6,0x18,0xD6,0x9A,0x63,0x2D,0x00,0x21, +0x00,0x00,0x84,0x31,0x84,0x31,0xF7,0x9E,0xA5,0x14,0x84,0x31,0x84,0x31,0x84,0x31, +0x84,0x31,0x10,0xA4,0xD6,0x9A,0xD6,0x9A,0xE7,0x1C,0xA5,0x14,0xC6,0x18,0xFF,0xFF, +0xF7,0x9E,0x73,0xAF,0x42,0x29,0xC6,0x18,0xC6,0x18,0xE7,0x1C,0xF7,0x9E,0xD6,0x9A, +0xF7,0x9E,0xD6,0x9A,0x63,0x2D,0x63,0x2D,0x84,0x31,0x84,0x31,0x84,0x31,0xA5,0x14, +0xE7,0x1C,0xB5,0x96,0xF7,0x9E,0x42,0x08,0x00,0x00,0x00,0x42,0x00,0x42,0xFF,0xFF, +0x73,0xAF,0x42,0x29,0x42,0x29,0x42,0x29,0x00,0x42,0x21,0x26,0xE7,0x1C,0xC6,0x18, +0xC6,0x18,0xF7,0x9E,0xE7,0x1C,0x63,0x2D,0x42,0x29,0xC6,0x18,0x42,0x29,0xD6,0x9A, +0xC6,0x18,0xA5,0x14,0xF7,0x9E,0xD6,0x9A,0xF7,0x9E,0xD6,0x9A,0x31,0xA7,0x63,0x2D, +0x84,0x31,0x84,0x31,0x84,0x31,0xA5,0x14,0xF7,0x9E,0x84,0x31,0x84,0x31,0x42,0x08, +0x00,0x00,0x00,0x42,0x00,0x42,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, +0x00,0x42,0x00,0x42,0x94,0x93,0xC6,0x18,0xC6,0x18,0xA5,0x14,0xB5,0x96,0xFF,0xFF, +0xFF,0xFF,0xA5,0x14,0x00,0x42,0xE7,0x1C,0xD6,0x9A,0x94,0x93,0xE7,0x1C,0xC6,0x18, +0xC6,0x18,0xF7,0x9E,0x42,0x29,0x42,0x29,0x84,0x31,0x84,0x31,0x84,0x31,0xA5,0x14, +0xFF,0xFF,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x00,0x00,0x42,0x31,0xA7,0xFF,0xFF, +0x00,0x42,0x00,0x42,0x42,0x29,0xFF,0xFF,0x00,0x42,0x00,0x42,0xC6,0x18,0xA5,0x14, +0xA5,0x14,0xC6,0x18,0x94,0x93,0x31,0xA7,0x63,0x2D,0x63,0x2D,0x63,0x2D,0xFF,0xFF, +0xF7,0x9E,0xE7,0x1C,0xC6,0x18,0x84,0x31,0x84,0x31,0xE7,0x1C,0x42,0x29,0x63,0x2D, +0xC6,0x18,0xFF,0xFF,0xD6,0x9A,0xA5,0x14,0xFF,0xFF,0x10,0xA4,0x00,0x42,0x00,0x21, +0x00,0x00,0x00,0x42,0x94,0x93,0xD6,0x9A,0x00,0x42,0x00,0x42,0x42,0x29,0xFF,0xFF, +0x00,0x42,0x00,0x42,0xC6,0x18,0xD6,0x9A,0xD6,0x9A,0xC6,0x18,0xC6,0x18,0xF7,0x9E, +0xF7,0x9E,0x63,0x2D,0x94,0x93,0xC6,0x18,0x84,0x31,0xA5,0x14,0xC6,0x18,0xF7,0x9E, +0xD6,0x9A,0xC6,0x18,0x73,0xAF,0x00,0x42,0x00,0x42,0xFF,0xFF,0x42,0x29,0x00,0x42, +0xF7,0x9E,0x52,0xAB,0x42,0x29,0x21,0x05,0x00,0x00,0x31,0xA7,0xF7,0x9E,0x63,0x2D, +0x00,0x42,0x00,0x42,0x84,0x31,0xC6,0x18,0x00,0x42,0x00,0x42,0xC6,0x18,0xD6,0x9A, +0xD6,0x9A,0xC6,0x18,0xC6,0x18,0x73,0xAF,0x42,0x29,0xC6,0x18,0x42,0x29,0x84,0x31, +0x84,0x31,0x84,0x31,0xB5,0x96,0xFF,0xFF,0xF7,0x9E,0x94,0x93,0x63,0x2D,0x31,0xA7, +0x52,0xAB,0xFF,0xFF,0xC6,0x18,0xC6,0x18,0xA5,0x14,0xA5,0x14,0xB5,0x96,0x5B,0x0C, +0x10,0x82,0xF7,0x9E,0xA5,0x14,0x00,0x42,0xA5,0x14,0xFF,0xFF,0xFF,0xFF,0x94,0x93, +0x00,0x42,0x00,0x42,0xC6,0x18,0x73,0xAF,0xD6,0x9A,0xC6,0x18,0xB5,0x96,0xD6,0x9A, +0xD6,0x9A,0xB5,0x96,0x00,0x42,0x84,0x31,0xA5,0x14,0xB5,0x96,0xFF,0xFF,0x73,0xAF, +0xC6,0x18,0xF7,0x9E,0x84,0x31,0xA5,0x14,0xC6,0x18,0xA5,0x14,0x84,0x31,0x63,0x2D, +0x31,0xA7,0xFF,0xFF,0xFF,0xFF,0x21,0x05,0x00,0x00,0x42,0x08,0x00,0x21,0x00,0x21, +0x21,0x05,0x42,0x08,0x21,0x05,0x00,0x21,0x00,0x21,0x00,0x21,0x5B,0x0C,0x31,0x87, +0x84,0x10,0x21,0x05,0x10,0x83,0x42,0x08,0x42,0x08,0x10,0x83,0x00,0x21,0x42,0x08, +0x4A,0x8A,0x5B,0x0C,0x10,0x83,0x00,0x21,0x00,0x21,0x42,0x08,0x4A,0x8A,0x00,0x21, +0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x31,0x87,0x42,0x08,0x00,0x00, +}; + +const unsigned char gImage_UI0902_TabSetting_Not_35x28[1960] = { /* 35x28 RGB565 BE */ +0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x10,0xA4,0x84,0x31,0xE7,0x1C, +0xE7,0x1C,0x00,0x42,0x31,0xA7,0xF7,0x9E,0xA5,0x14,0x21,0x26,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x31,0xA7, +0xE7,0x1C,0xE7,0x1C,0x73,0xAF,0x21,0x26,0x00,0x42,0x42,0x29,0xE7,0x1C,0xC6,0x18, +0xFF,0xFF,0x63,0x2D,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x21,0x26,0xF7,0x9E,0xA5,0x14,0x10,0xA4,0x00,0x42,0x42,0x29,0x00,0x42, +0x42,0x29,0xC6,0x18,0x00,0x42,0x63,0x2D,0xFF,0xFF,0x52,0xAB,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0xC6,0x18,0xB5,0x96,0x00,0x42,0x31,0xA7, +0xD6,0x9A,0x94,0x93,0x00,0x42,0x42,0x29,0xC6,0x18,0x00,0x42,0x00,0x42,0x84,0x31, +0xF7,0x9E,0x10,0xA4,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x31,0xA7,0xFF,0xFF, +0x21,0x26,0x21,0x26,0xE7,0x1C,0x31,0xA7,0x00,0x42,0x00,0x42,0x42,0x29,0xC6,0x18, +0x84,0x31,0x52,0xAB,0x00,0x42,0xE7,0x1C,0x63,0x2D,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x73,0xAF,0xC6,0x18,0x00,0x42,0x94,0x93,0x63,0x2D,0x00,0x42,0x84,0x31, +0xC6,0x18,0xD6,0x9A,0xC6,0x18,0x21,0x26,0xD6,0x9A,0x00,0x42,0x94,0x93,0xB5,0x96, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x84,0x31,0x94,0x93,0x00,0x42,0xC6,0x18, +0x00,0x42,0x31,0xA7,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xC6,0x18,0x00,0x42,0xC6,0x18, +0x00,0x42,0x52,0xAB,0xC6,0x18,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x84,0x31, +0x94,0x93,0x00,0x42,0xC6,0x18,0x00,0x42,0x31,0xA7,0xF7,0x9E,0xFF,0xFF,0xFF,0xFF, +0x94,0x93,0x00,0x42,0xC6,0x18,0x00,0x42,0x52,0xAB,0xC6,0x18,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x84,0x31,0xC6,0x18,0x00,0x42,0x94,0x93,0x52,0xAB,0x00,0x42, +0x52,0xAB,0xFF,0xFF,0xF7,0x9E,0x31,0xA7,0x10,0xA4,0xD6,0x9A,0x00,0x42,0x94,0x93, +0xC6,0x18,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x31,0xA7,0xFF,0xFF,0x21,0x26, +0x21,0x26,0xD6,0x9A,0x21,0x26,0x00,0x42,0x10,0xA4,0x00,0x42,0x00,0x42,0xB5,0x96, +0x52,0xAB,0x00,0x42,0xE7,0x1C,0x73,0xAF,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0xC6,0x18,0xB5,0x96,0x00,0x42,0x31,0xA7,0xD6,0x9A,0x94,0x93,0x42,0x29, +0x73,0xAF,0xE7,0x1C,0x63,0x2D,0x00,0x42,0x84,0x31,0xF7,0x9E,0x10,0xA4,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x21,0x26,0xF7,0x9E,0xA5,0x14,0x00,0x42, +0x00,0x42,0x52,0xAB,0x84,0x31,0x63,0x2D,0x10,0xA4,0x00,0x42,0x63,0x2D,0xFF,0xFF, +0x52,0xAB,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x31,0xA7,0xF7,0x9E,0xD6,0x9A,0x63,0x2D,0x10,0xA4,0x00,0x42,0x00,0x42,0x52,0xAB, +0xB5,0x96,0xFF,0xFF,0x63,0x2D,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x10,0xA4,0x84,0x31,0xF7,0x9E,0xFF,0xFF, +0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xA5,0x14,0x31,0xA7,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x31,0xA7,0x42,0x29,0x42,0x29,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42, +0x00,0x42,0x10,0xA4,0x00,0x42,0x10,0xA4,0x10,0xA4,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x10,0xA3,0x42,0x29,0xC6,0x18,0xC6,0x18,0x42,0x29,0xB5,0x96,0xD6,0x9A, +0x42,0x29,0x10,0xA4,0x52,0xAB,0xB5,0x96,0x31,0xA7,0xC6,0x18,0xC6,0x18,0xC6,0x18, +0xC6,0x18,0xC6,0x18,0x00,0x42,0x00,0x42,0xFF,0xFF,0x21,0x26,0x73,0xAF,0xD6,0x9A, +0x42,0x29,0xFF,0xFF,0x42,0x29,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0xC6,0x18,0x84,0x31,0xD6,0x9A,0x10,0xA4,0x31,0xA7,0xF7,0x9E,0xD6,0x9A,0xFF,0xFF, +0xC6,0x18,0xFF,0xFF,0xD6,0x9A,0xF7,0x9E,0x31,0xA7,0x10,0xA4,0xF7,0x9E,0x73,0xAF, +0x94,0x93,0xF7,0x9E,0xD6,0x9A,0xFF,0xFF,0x84,0x31,0x00,0x42,0x84,0x31,0xFF,0xFF, +0xC6,0x18,0xD6,0x9A,0xF7,0x9E,0xC6,0x18,0xFF,0xFF,0xC6,0x18,0x21,0x26,0x84,0x31, +0x84,0x31,0x84,0x31,0x84,0x31,0xE7,0x1C,0xA5,0x14,0xF7,0x9E,0xC6,0x18,0x00,0x21, +0xB5,0x96,0xC6,0x18,0xFF,0xFF,0x00,0x42,0xFF,0xFF,0xD6,0x9A,0xA5,0x14,0x00,0x42, +0x00,0x42,0x52,0xAB,0x52,0xAB,0xC6,0x18,0xF7,0x9E,0xFF,0xFF,0xE7,0x1C,0xC6,0x18, +0x00,0x42,0x94,0x93,0xFF,0xFF,0x84,0x31,0xD6,0x9A,0xF7,0x9E,0xC6,0x18,0xFF,0xFF, +0x94,0x93,0x21,0x26,0x84,0x31,0x84,0x31,0x84,0x31,0x84,0x31,0xE7,0x1C,0xC6,0x18, +0x84,0x31,0x84,0x31,0x5B,0x0D,0xD6,0x9A,0xE7,0x1C,0xFF,0xFF,0xC6,0x18,0xFF,0xFF, +0xF7,0x9E,0xC6,0x18,0x63,0x2D,0xC6,0x18,0xFF,0xFF,0x84,0x31,0xE7,0x1C,0xA5,0x14, +0xE7,0x1C,0x84,0x31,0xFF,0xFF,0x00,0x42,0x63,0x2D,0xFF,0xFF,0x63,0x2D,0xFF,0xFF, +0xC6,0x18,0xC6,0x18,0xD6,0x9A,0xC6,0x18,0x00,0x42,0x84,0x31,0x84,0x31,0x84,0x31, +0x84,0x31,0xE7,0x1C,0x84,0x31,0x00,0x42,0x00,0x42,0x21,0x25,0x84,0x31,0xC6,0x18, +0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18,0x84,0x31,0x21,0x26,0x00,0x42,0xFF,0xFF, +0x84,0x31,0xF7,0x9E,0xD6,0x9A,0xF7,0x9E,0xC6,0x18,0xFF,0xFF,0x00,0x42,0xE7,0x1C, +0xFF,0xFF,0xE7,0x1C,0xFF,0xFF,0x84,0x31,0x84,0x31,0xA5,0x14,0xC6,0x18,0x00,0x42, +0xC6,0x18,0xE7,0x1C,0xF7,0x9E,0xC6,0x18,0xB5,0x96,0x94,0x93,0x00,0x42,0x00,0x42, +0x00,0x21,0x84,0x31,0xE7,0x1C,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xE7,0x1C,0x84,0x31, +0x00,0x42,0x00,0x42,0xFF,0xFF,0x84,0x31,0xF7,0x9E,0xD6,0x9A,0xF7,0x9E,0xC6,0x18, +0xFF,0xFF,0x00,0x42,0xE7,0x1C,0xFF,0xFF,0x42,0x29,0xC6,0x18,0xD6,0x9A,0xF7,0x9E, +0xC6,0x18,0xB5,0x96,0x21,0x26,0x00,0x42,0x84,0x31,0xC6,0x18,0x00,0x42,0x63,0x2D, +0xE7,0x1C,0x00,0x42,0x73,0xAF,0x00,0x21,0x84,0x31,0xE7,0x1C,0xC6,0x18,0xC6,0x18, +0xC6,0x18,0xE7,0x1C,0x84,0x31,0x00,0x42,0x31,0xA7,0xFF,0xFF,0xB5,0x96,0xC6,0x18, +0x42,0x29,0xC6,0x18,0xE7,0x1C,0xE7,0x1C,0x00,0x42,0x31,0xA7,0xFF,0xFF,0x42,0x29, +0x84,0x31,0xF7,0x9E,0xFF,0xFF,0xC6,0x18,0x84,0x31,0x29,0xA7,0x42,0x29,0xB5,0x96, +0xE7,0x1C,0xC6,0x18,0x73,0xAF,0xFF,0xFF,0x63,0x2D,0xE7,0x1C,0x00,0x21,0x84,0x31, +0xE7,0x1C,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xE7,0x1C,0x84,0x31,0x00,0x42,0xC6,0x18, +0x94,0x93,0xF7,0x9E,0xE7,0x1C,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18,0x52,0xAB, +0x00,0x42,0xFF,0xFF,0x73,0xAF,0xE7,0x1C,0xD6,0x9A,0x73,0xAF,0xF7,0x9E,0xD6,0x9A, +0x4A,0x8B,0xD6,0x9A,0xC6,0x18,0x84,0x31,0x84,0x31,0x21,0x26,0xA5,0x14,0xFF,0xFF, +0xA5,0x14,0x00,0x00,0x42,0x08,0x42,0x08,0x00,0x21,0x00,0x21,0x00,0x21,0x42,0x08, +0x42,0x08,0x00,0x21,0x21,0x05,0x00,0x21,0x00,0x21,0x42,0x08,0x42,0x08,0x42,0x08, +0x42,0x08,0x42,0x08,0x10,0x83,0x00,0x21,0x84,0x10,0x4A,0x8A,0x31,0x87,0x00,0x21, +0x00,0x21,0x10,0x83,0x5B,0x0C,0x10,0x83,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21, +0x00,0x21,0x10,0x83,0x4A,0x8A,0x10,0x83, +}; + +const unsigned char gImage_UI0902_TabMixer_Sel_35x27[1890] = { /* 35x27 RGB565 BE */ +0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21, +0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x31,0xA7, +0xA5,0x14,0xB5,0x96,0x5B,0x0D,0x10,0xA3,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21, +0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21, +0x00,0x21,0x00,0x21,0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x31,0xA7, +0x94,0x93,0xE7,0x1C,0xFF,0xFF,0xD6,0x9A,0xB5,0x96,0xFF,0xFF,0xF7,0x9E,0xA5,0x14, +0x52,0xAB,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x21,0x26, +0x73,0xAF,0xD6,0x9A,0xFF,0xFF,0xE7,0x1C,0x84,0x31,0x21,0x26,0x00,0x42,0x00,0x42, +0x10,0xA4,0x63,0x2D,0xC6,0x18,0xFF,0xFF,0xF7,0x9E,0xA5,0x14,0x31,0xA7,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x94,0x93,0xFF,0xFF,0xF7,0x9E,0x94,0x93,0x31,0xA7,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x21,0x26,0x73,0xAF, +0xE7,0x1C,0xFF,0xFF,0xD6,0x9A,0x10,0xA4,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x52,0xAB,0xD6,0x9A,0xFF,0xFF,0xE7,0x1C, +0x94,0x93,0x31,0xA7,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x10,0xA4,0x73,0xAF,0xD6,0x9A,0xFF,0xFF,0xE7,0x1C,0xFF,0xFF,0x42,0x29,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x21,0x26,0xB5,0x96,0xFF,0xFF,0xFF,0xFF,0xD6,0x9A,0x73,0xAF,0x21,0x26, +0x10,0xA4,0x63,0x2D,0xB5,0x96,0xFF,0xFF,0xF7,0x9E,0xA5,0x14,0x42,0x29,0x00,0x42, +0xFF,0xFF,0x42,0x29,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x84,0x31,0xC6,0x18,0x31,0xA7, +0x94,0x93,0xE7,0x1C,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xA5,0x14,0x52,0xAB,0x21,0x26, +0x52,0xAB,0x00,0x42,0x00,0x42,0xFF,0xFF,0x42,0x29,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x84,0x31,0xC6,0x18,0x00,0x42,0x00,0x42,0x00,0x42,0x42,0x29,0x42,0x29,0x10,0xA4, +0x00,0x42,0x00,0x42,0x84,0x31,0xC6,0x18,0x00,0x42,0x00,0x42,0x84,0x31,0x10,0xA4, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x84,0x31,0xC6,0x18,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x84,0x31,0xC6,0x18,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x73,0xAF,0xE7,0x1C, +0x10,0xA4,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0xB5,0x96,0xC6,0x18,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x10,0xA4,0xE7,0x1C,0xFF,0xFF,0xB5,0x96,0x84,0x31,0x73,0xAF,0x52,0xAB, +0x84,0x31,0xA5,0x14,0xE7,0x1C,0xFF,0xFF,0x52,0xAB,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x63,0x2D,0xA5,0x14, +0xC6,0x18,0xE7,0x1C,0xE7,0x1C,0xC6,0x18,0xC6,0x18,0x73,0xAF,0x10,0xA4,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42, +0x21,0x26,0xFF,0xFF,0x21,0x26,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0xC6,0x18,0x84,0x31,0xC6,0x18,0x84,0x31,0x00,0x42,0x00,0x42,0x00,0x42, +0x84,0x31,0x84,0x31,0x31,0xA7,0xD6,0x9A,0x73,0xAF,0xA5,0x14,0xA5,0x14,0x31,0xA7, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x42,0x29,0xC6,0x18,0xC6,0x18,0x73,0xAF, +0x00,0x21,0xC6,0x18,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, +0xC6,0x18,0x00,0x42,0x63,0x2D,0x10,0xA4,0xC6,0x18,0x84,0x31,0xC6,0x18,0x84,0x31, +0x31,0xA7,0x42,0x29,0x21,0x26,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xF7,0x9E,0xD6,0x9A, +0xE7,0x1C,0xE7,0x1C,0x94,0x93,0x42,0x29,0x84,0x31,0x84,0x31,0x84,0x31,0xA5,0x14, +0xE7,0x1C,0xB5,0x96,0xFF,0xFF,0x42,0x08,0x42,0x29,0x42,0x29,0xD6,0x9A,0xB5,0x96, +0x42,0x29,0x42,0x29,0x42,0x29,0x42,0x29,0x00,0x42,0xE7,0x1C,0x63,0x2D,0xC6,0x18, +0x84,0x31,0xC6,0x18,0x84,0x31,0xA5,0x14,0xA5,0x14,0x21,0x26,0xD6,0x9A,0xC6,0x18, +0xA5,0x14,0xF7,0x9E,0xD6,0x9A,0xE7,0x1C,0xE7,0x1C,0x31,0xA7,0x42,0x29,0x84,0x31, +0x84,0x31,0x84,0x31,0xA5,0x14,0xFF,0xFF,0x84,0x31,0x84,0x31,0x42,0x08,0xC6,0x18, +0xD6,0x9A,0xFF,0xFF,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18,0x00,0x42, +0x84,0x31,0xD6,0x9A,0xC6,0x18,0x84,0x31,0xC6,0x18,0x94,0x93,0xFF,0xFF,0x42,0x29, +0x00,0x42,0xE7,0x1C,0xD6,0x9A,0xA5,0x14,0xE7,0x1C,0xC6,0x18,0xC6,0x18,0xF7,0x9E, +0x42,0x29,0x42,0x29,0x84,0x31,0x84,0x31,0x84,0x31,0x94,0x93,0xFF,0xFF,0x00,0x42, +0x00,0x42,0x00,0x21,0x00,0x42,0x84,0x31,0xFF,0xFF,0xC6,0x18,0xC6,0x18,0xC6,0x18, +0xC6,0x18,0x31,0xA7,0x00,0x42,0x21,0x26,0xFF,0xFF,0xF7,0x9E,0x84,0x31,0xC6,0x18, +0xF7,0x9E,0xE7,0x1C,0x00,0x42,0x52,0xAB,0xFF,0xFF,0xF7,0x9E,0xF7,0x9E,0xC6,0x18, +0x84,0x31,0x84,0x31,0xE7,0x1C,0x42,0x29,0x63,0x2D,0xC6,0x18,0xFF,0xFF,0xD6,0x9A, +0x94,0x93,0xFF,0xFF,0x21,0x26,0x00,0x42,0x00,0x21,0x00,0x42,0x94,0x93,0xA5,0x14, +0x84,0x31,0x84,0x31,0xF7,0x9E,0xF7,0x9E,0x21,0x26,0x00,0x42,0x00,0x42,0xA5,0x14, +0xE7,0x1C,0x84,0x31,0xC6,0x18,0xD6,0x9A,0x52,0xAB,0x00,0x42,0x84,0x31,0xE7,0x1C, +0x84,0x31,0xA5,0x14,0xC6,0x18,0xF7,0x9E,0xE7,0x1C,0xC6,0x18,0x73,0xAF,0x00,0x42, +0x00,0x42,0xFF,0xFF,0x42,0x29,0x00,0x42,0xE7,0x1C,0x63,0x2D,0x42,0x29,0x31,0x87, +0x00,0x42,0xD6,0x9A,0xFF,0xFF,0xC6,0x18,0xD6,0x9A,0xD6,0x9A,0x31,0xA7,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0xC6,0x18,0x84,0x31,0xC6,0x18,0x84,0x31,0x00,0x42, +0x00,0x42,0x31,0xA7,0x84,0x31,0x84,0x31,0x84,0x31,0xB5,0x96,0xFF,0xFF,0xFF,0xFF, +0x94,0x93,0x63,0x2D,0x31,0xA7,0x52,0xAB,0xFF,0xFF,0xC6,0x18,0xC6,0x18,0x94,0x93, +0xC6,0x18,0xA5,0x14,0x6B,0x8E,0x00,0x42,0x00,0x42,0x21,0x26,0x94,0x93,0xE7,0x1C, +0xFF,0xFF,0x84,0x31,0x00,0x42,0x42,0x29,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, +0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x42,0x84,0x31,0xA5,0x14,0xB5,0x96, +0xFF,0xFF,0x73,0xAF,0xC6,0x18,0xF7,0x9E,0x84,0x31,0x94,0x93,0xC6,0x18,0xB5,0x96, +0x84,0x31,0x63,0x2D,0x21,0x26,0xF7,0x9E,0xFF,0xFF,0x21,0x05,0x00,0x21,0x00,0x21, +0x00,0x21,0x00,0x21,0x00,0x21,0x42,0x08,0x4A,0x8A,0x00,0x21,0x00,0x21,0x00,0x21, +0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21, +0x42,0x08,0x42,0x08,0x6B,0x8E,0x10,0x83,0x00,0x21,0x00,0x21,0x31,0x87,0x5B,0x0C, +0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x31,0x87,0x4A,0x8A, +0x00,0x00, +}; + +const unsigned char gImage_UI0902_TabMixer_Not_18x28[1008] = { /* 18x28 RGB565 BE */ +0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x63,0x2D,0x73,0xAF,0x31,0xA7,0xFF,0xFF, +0x52,0xAB,0x84,0x31,0xC6,0x18,0x31,0xA7,0x84,0x31,0x42,0x29,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x21,0x00,0x21,0x00,0x42,0x00,0x42,0xA5,0x14,0xF7,0x9E,0xC6,0x18, +0xFF,0xFF,0x94,0x93,0x00,0x42,0x10,0xA4,0xD6,0x9A,0xFF,0xFF,0xB5,0x96,0xFF,0xFF, +0x63,0x2D,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x21,0x00,0x42,0x10,0xA4,0xFF,0xFF, +0x21,0x26,0x00,0x42,0x00,0x42,0x31,0xA7,0x84,0x31,0x73,0xAF,0x21,0x26,0x00,0x42, +0x00,0x42,0x63,0x2D,0xC6,0x18,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x21,0x00,0x42, +0x00,0x42,0xE7,0x1C,0x42,0x29,0x10,0xA4,0xD6,0x9A,0xE7,0x1C,0x94,0x93,0xB5,0x96, +0xF7,0x9E,0x94,0x93,0x00,0x42,0x84,0x31,0x94,0x93,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x21,0x84,0x31,0xD6,0x9A,0xF7,0x9E,0x10,0xA4,0xD6,0x9A,0xA5,0x14,0x00,0x42, +0x00,0x42,0x00,0x42,0x10,0xA4,0xD6,0x9A,0x94,0x93,0x42,0x29,0xFF,0xFF,0xC6,0x18, +0x42,0x29,0x00,0x21,0x00,0x21,0xC6,0x18,0x73,0xAF,0x00,0x42,0x63,0x2D,0xC6,0x18, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x21,0x26,0xFF,0xFF,0x21,0x26, +0x10,0xA4,0xA5,0x14,0x84,0x31,0x00,0x21,0x00,0x21,0xFF,0xFF,0x42,0x29,0x00,0x42, +0xA5,0x14,0x84,0x31,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0xC6,0x18,0x42,0x29,0x00,0x42,0x94,0x93,0xB5,0x96,0x00,0x21,0x00,0x21,0x84,0x31, +0xF7,0x9E,0x31,0xA7,0xA5,0x14,0x73,0xAF,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0xC6,0x18,0x42,0x29,0x73,0xAF,0xE7,0x1C,0x52,0xAB,0x00,0x21, +0x00,0x21,0x00,0x42,0xD6,0x9A,0x73,0xAF,0x73,0xAF,0xC6,0x18,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x10,0xA4,0xF7,0x9E,0x31,0xA7,0xC6,0x18,0x84,0x31, +0x00,0x42,0x00,0x21,0x00,0x21,0x63,0x2D,0xF7,0x9E,0x21,0x26,0x10,0xA4,0xF7,0x9E, +0x63,0x2D,0x00,0x42,0x00,0x42,0x00,0x42,0x10,0xA4,0xA5,0x14,0xC6,0x18,0x00,0x42, +0x63,0x2D,0xF7,0x9E,0x21,0x26,0x00,0x21,0x00,0x21,0x42,0x29,0xF7,0x9E,0x10,0xA4, +0x00,0x42,0x31,0xA7,0xF7,0x9E,0xC6,0x18,0x84,0x31,0x84,0x31,0xE7,0x1C,0xC6,0x18, +0x10,0xA4,0x00,0x42,0x52,0xAB,0xF7,0x9E,0x10,0xA4,0x00,0x21,0x00,0x21,0x00,0x42, +0xA5,0x14,0xFF,0xFF,0xFF,0xFF,0x63,0x2D,0x10,0xA4,0x63,0x2D,0x84,0x31,0x84,0x31, +0x52,0xAB,0x00,0x42,0xB5,0x96,0xFF,0xFF,0xFF,0xFF,0x63,0x2D,0x00,0x42,0x00,0x21, +0x00,0x21,0x00,0x42,0x00,0x42,0x31,0xA7,0x52,0xAB,0xFF,0xFF,0x00,0x42,0x10,0xA4, +0x42,0x29,0x42,0x29,0x00,0x42,0x42,0x29,0xE7,0x1C,0x10,0xA4,0x31,0xA7,0x00,0x42, +0x00,0x42,0x00,0x21,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x31,0xA7,0xF7,0x9E, +0x94,0x93,0xA5,0x14,0xE7,0x1C,0xF7,0x9E,0x84,0x31,0xB5,0x96,0xF7,0x9E,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x31,0xA7,0x94,0x93,0xB5,0x96,0x10,0xA4,0x42,0x29,0xC6,0x18,0x73,0xAF, +0x21,0x26,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x21,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x21,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x21,0xE7,0x1C, +0x42,0x29,0x31,0xA7,0xC6,0x18,0xC6,0x18,0xC6,0x18,0x63,0x2D,0x00,0x42,0x31,0xA7, +0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xC6,0x18,0x00,0x21, +0x00,0x21,0x94,0x93,0xF7,0x9E,0x42,0x29,0xFF,0xFF,0x42,0x29,0xA5,0x14,0x84,0x31, +0x00,0x42,0x42,0x29,0xFF,0xFF,0xA5,0x14,0xFF,0xFF,0xA5,0x14,0xFF,0xFF,0xA5,0x14, +0xFF,0xFF,0x00,0x21,0x21,0x05,0x42,0x29,0x73,0xAF,0xD6,0x9A,0x73,0xAF,0x00,0x42, +0x84,0x31,0xFF,0xFF,0x73,0xAF,0x52,0xAB,0xC6,0x18,0xC6,0x18,0xD6,0x9A,0xFF,0xFF, +0xC6,0x18,0xC6,0x18,0xC6,0x18,0x21,0x05,0x5B,0x0C,0xF7,0x9E,0x84,0x31,0xC6,0x18, +0x84,0x31,0x84,0x31,0x84,0x31,0xC6,0x18,0x21,0x26,0x21,0x26,0xA5,0x14,0xC6,0x18, +0xD6,0x9A,0xFF,0xFF,0xC6,0x18,0xC6,0x18,0x84,0x31,0x10,0x83,0x00,0x21,0xC6,0x18, +0x84,0x31,0xA5,0x14,0xF7,0x9E,0x84,0x31,0xC6,0x18,0xF7,0x9E,0x00,0x42,0x00,0x42, +0xC6,0x18,0xE7,0x1C,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xF7,0x9E,0x84,0x31,0x00,0x21, +0x00,0x21,0xC6,0x18,0x94,0x93,0x52,0xAB,0xF7,0x9E,0x94,0x93,0xF7,0x9E,0x63,0x2D, +0x00,0x42,0x00,0x42,0xC6,0x18,0xE7,0x1C,0xC6,0x18,0xC6,0x18,0xC6,0x18,0xF7,0x9E, +0x84,0x31,0x00,0x21,0x00,0x21,0xC6,0x18,0xFF,0xFF,0x94,0x93,0x94,0x93,0xFF,0xFF, +0xF7,0x9E,0x21,0x26,0x00,0x42,0x00,0x42,0xC6,0x18,0xE7,0x1C,0xC6,0x18,0xC6,0x18, +0xC6,0x18,0xF7,0x9E,0x84,0x31,0x00,0x21,0x00,0x21,0xD6,0x9A,0xD6,0x9A,0xF7,0x9E, +0xF7,0x9E,0x84,0x31,0xC6,0x18,0xFF,0xFF,0x94,0x93,0x94,0x93,0xF7,0x9E,0xFF,0xFF, +0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xE7,0x1C,0x5B,0x0C,0x00,0x00,0x00,0x21, +0x10,0x83,0x5B,0x0C,0x10,0x83,0x00,0x21,0x00,0x21,0x31,0x87,0x31,0x87,0x31,0x87, +0x42,0x08,0x42,0x08,0x42,0x08,0x42,0x08,0x42,0x08,0x42,0x08,0x42,0x08,0x21,0x04, +}; + +const unsigned char gImage_UI0902_TabMode_Sel_36x28[2016] = { /* 36x28 RGB565 BE */ +0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0xA6, +0x12,0x96,0x1B,0x9F,0x1B,0x9F,0x1A,0xFA,0x01,0x09,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0xA6,0x1B,0x7E,0x1B,0x7E,0x12,0x33,0x12,0xD8,0x1B,0x9F, +0x1B,0x9F,0x00,0xA6,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x12,0x54,0x1B,0x7E, +0x00,0xE7,0x00,0x42,0x00,0x42,0x00,0x64,0x1B,0x7E,0x12,0x54,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x1B,0x7E,0x12,0x33,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x09,0xF1,0x1B,0x9F,0x00,0xA6,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x1B,0x9F,0x09,0xF1, +0x00,0xA6,0x01,0x09,0x01,0x09,0x00,0xA6,0x01,0x09,0x1B,0x9F,0x01,0x09,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x64,0x09,0x8D,0x1B,0x9F,0x12,0x54,0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x1B,0x9F, +0x12,0x54,0x1B,0x9F,0x09,0xF1,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0xE7,0x1B,0x7E,0x1B,0x9F,0x1B,0x7E,0x09,0x6C, +0x09,0xF1,0x01,0x09,0x01,0x09,0x09,0x8D,0x09,0x6C,0x1B,0x3C,0x1B,0x9F,0x1B,0x3C, +0x09,0x4B,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0xA6,0x1B,0x7E, +0x1A,0xFA,0x01,0x09,0x12,0x54,0x12,0xD8,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x12,0x33,0x1B,0x3C,0x00,0xA6,0x12,0xD8,0x1B,0x9F,0x01,0x09,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x12,0x33,0x1B,0x9F,0x00,0xA6,0x00,0x42,0x09,0xAF,0x1B,0x9F, +0x00,0xE7,0x00,0x42,0x00,0x42,0x00,0x42,0x1B,0x3C,0x12,0x54,0x00,0x42,0x00,0x42, +0x1B,0x3C,0x12,0x96,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x12,0xD8,0x1A,0xFA, +0x00,0x42,0x00,0x42,0x00,0x64,0x1B,0x7E,0x12,0xD8,0x00,0x42,0x00,0x42,0x09,0xF1, +0x1B,0x9F,0x01,0x09,0x00,0x42,0x00,0x42,0x09,0xF1,0x1B,0x9F,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x12,0xD8,0x1B,0x9F,0x00,0x42,0x00,0x42,0x00,0x42,0x09,0xAF, +0x1B,0x9F,0x09,0xF1,0x00,0xE7,0x1B,0x9F,0x12,0x96,0x00,0x42,0x00,0x42,0x00,0x42, +0x09,0xF1,0x1B,0x9F,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x12,0x33,0x1B,0x9F, +0x09,0x4B,0x00,0x42,0x00,0x42,0x00,0x42,0x12,0x54,0x0A,0x12,0x1B,0x7E,0x1A,0xFA, +0x00,0x64,0x00,0x42,0x00,0x42,0x00,0x64,0x1B,0x3C,0x12,0x96,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0xA6,0x1B,0x7E,0x1B,0x9F,0x12,0x33,0x01,0x09,0x01,0x09, +0x12,0x54,0x1B,0x9F,0x1A,0xFA,0x09,0xF1,0x09,0xF1,0x09,0xF1,0x09,0x8D,0x1A,0xFA, +0x1B,0x9F,0x01,0x09,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0xE7, +0x1B,0x3C,0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x1B,0x7E,0x12,0x33,0x09,0x4B,0x1A,0xFA, +0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x12,0xD8,0x09,0x4B,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0xE7,0x01,0x09,0x01,0x09, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x64,0x01,0x09,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x00,0x09,0xF1,0x09,0xF1,0x09,0xF1, +0x09,0xF1,0x09,0xF1,0x09,0xF1,0x09,0xF1,0x09,0xF1,0x00,0x42,0x00,0x64,0x1B,0x7E, +0x09,0x8D,0x00,0x42,0x12,0xD8,0x01,0x09,0x09,0x8D,0x01,0x09,0x00,0x42,0x09,0xF1, +0x09,0xF1,0x01,0x09,0x1A,0xFA,0x09,0xAF,0x1A,0xFA,0x09,0xAF,0x00,0xA6,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x01,0x09,0x12,0xD8,0x1A,0xFA,0x09,0x8D,0x00,0x21, +0x00,0x00,0x12,0xD8,0x12,0xD8,0x1B,0x7E,0x1A,0xFA,0x12,0xD8,0x12,0xD8,0x12,0xD8, +0x12,0xD8,0x00,0x42,0x12,0xD8,0x12,0x96,0x1B,0x7E,0x12,0x33,0x12,0xD8,0x1B,0x7E, +0x1B,0x7E,0x09,0xF1,0x00,0xA6,0x12,0x54,0x12,0x54,0x1B,0x3C,0x1B,0x7E,0x1A,0xFA, +0x1B,0x7E,0x1A,0xFA,0x09,0x8D,0x09,0x8D,0x09,0xF1,0x09,0xF1,0x09,0xF1,0x12,0x54, +0x1B,0x3C,0x1A,0xFA,0x1B,0x9F,0x01,0x08,0x00,0x00,0x00,0x42,0x00,0x42,0x1B,0x9F, +0x09,0xAF,0x01,0x09,0x01,0x09,0x01,0x09,0x00,0x42,0x00,0xE7,0x1B,0x9F,0x1B,0x3C, +0x12,0xD8,0x1B,0x7E,0x1B,0x7E,0x09,0xF1,0x01,0x09,0x12,0xD8,0x09,0x8D,0x1B,0x7E, +0x1B,0x3C,0x12,0xD8,0x1B,0x7E,0x1A,0xFA,0x1B,0x7E,0x1A,0xFA,0x00,0xE7,0x12,0x33, +0x12,0xD8,0x12,0xD8,0x12,0xD8,0x1A,0xFA,0x1B,0x9F,0x12,0xD8,0x12,0xD8,0x09,0x6C, +0x00,0x00,0x00,0x42,0x00,0x42,0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x1B,0x9F, +0x00,0x42,0x00,0x42,0x12,0x33,0x12,0xD8,0x12,0xD8,0x12,0x96,0x12,0x96,0x1B,0x9F, +0x1B,0x9F,0x12,0x54,0x00,0x42,0x1B,0x3C,0x1A,0xFA,0x12,0x33,0x12,0xD8,0x09,0xF1, +0x09,0xF1,0x1B,0x3C,0x01,0x09,0x00,0xA6,0x01,0x09,0x01,0x09,0x01,0x09,0x09,0xAF, +0x1B,0x9F,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x00,0x00,0x42,0x00,0xE7,0x1B,0x9F, +0x00,0x64,0x00,0x42,0x01,0x09,0x1B,0x9F,0x00,0x42,0x00,0x42,0x12,0xD8,0x1A,0xFA, +0x1A,0xFA,0x12,0xD8,0x12,0x33,0x00,0xE7,0x09,0x8D,0x01,0x09,0x09,0x8D,0x1B,0x9F, +0x1B,0x7E,0x1B,0x7E,0x1B,0x3C,0x12,0xD8,0x12,0xD8,0x1B,0x7E,0x01,0x09,0x09,0x8D, +0x12,0xD8,0x1B,0x9F,0x1A,0xFA,0x12,0x54,0x1B,0x9F,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x00,0x00,0x42,0x09,0xF1,0x1A,0xFA,0x00,0x42,0x00,0x42,0x01,0x09,0x1B,0x9F, +0x00,0x42,0x00,0x42,0x12,0xD8,0x12,0x54,0x12,0x54,0x12,0xD8,0x12,0xD8,0x1B,0x7E, +0x1B,0x7E,0x09,0xAF,0x12,0x54,0x1B,0x3C,0x09,0xF1,0x09,0x8D,0x09,0xF1,0x1B,0x3C, +0x12,0x54,0x09,0xF1,0x01,0x09,0x00,0x42,0x00,0x42,0x1B,0x9F,0x01,0x09,0x00,0x42, +0x1B,0x7E,0x09,0x4B,0x01,0x09,0x00,0x85,0x00,0x00,0x00,0xE7,0x1B,0x7E,0x09,0x8D, +0x00,0x42,0x00,0x42,0x09,0xAF,0x12,0xD8,0x00,0x42,0x00,0x42,0x12,0xD8,0x1A,0xFA, +0x1A,0xFA,0x12,0xD8,0x12,0xD8,0x09,0xF1,0x01,0x09,0x12,0xD8,0x01,0x09,0x09,0xF1, +0x09,0xF1,0x09,0xF1,0x12,0x96,0x1B,0x9F,0x1B,0x7E,0x09,0xF1,0x09,0x8D,0x00,0xE7, +0x01,0x09,0x1B,0x9F,0x12,0x54,0x12,0x96,0x12,0x54,0x12,0x54,0x12,0x96,0x09,0x6C, +0x00,0x84,0x1B,0x7E,0x12,0x96,0x00,0x42,0x12,0x54,0x1B,0x9F,0x1B,0x9F,0x12,0x33, +0x00,0x42,0x00,0x42,0x12,0xD8,0x09,0x8D,0x12,0x96,0x12,0xD8,0x12,0xD8,0x1A,0xFA, +0x1A,0xFA,0x12,0x96,0x00,0x42,0x09,0xF1,0x12,0x54,0x12,0x54,0x1B,0x7E,0x09,0xAF, +0x1A,0xFA,0x1B,0x3C,0x09,0xAF,0x12,0xD8,0x1A,0xFA,0x12,0xD8,0x12,0x33,0x09,0xF1, +0x01,0x09,0x1B,0x9F,0x1B,0x7E,0x00,0x85,0x00,0x00,0x09,0xAE,0x00,0x43,0x00,0x21, +0x00,0x85,0x01,0x08,0x01,0x08,0x00,0x21,0x00,0x21,0x00,0x21,0x09,0x6C,0x01,0x08, +0x09,0xD0,0x09,0x2A,0x00,0x85,0x01,0x08,0x01,0x08,0x00,0x85,0x00,0x21,0x01,0x08, +0x09,0x2A,0x09,0xAE,0x00,0x85,0x00,0x21,0x00,0x21,0x09,0x6C,0x09,0x2A,0x00,0x21, +0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x01,0x08,0x09,0x2A,0x00,0x00, +}; + +const unsigned char gImage_UI0902_TabMode_Not_35x29[2030] = { /* 35x29 RGB565 BE */ +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0xA6,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x64,0x12,0x54,0x1B,0x7E,0x1B,0x7E,0x00,0x42,0x00,0xE7,0x1B,0x9F,0x12,0x96, +0x00,0xE7,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0xE7,0x1B,0x7E,0x1B,0x3C,0x09,0x8D,0x00,0x64,0x00,0x42, +0x01,0x09,0x1A,0xFA,0x12,0x96,0x1B,0x9F,0x09,0x8D,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0xE7,0x1B,0x7E,0x12,0x54,0x00,0x42, +0x00,0x64,0x01,0x09,0x00,0x42,0x01,0x09,0x12,0xD8,0x00,0x42,0x09,0x8D,0x1B,0x9F, +0x09,0x8D,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x12,0xD8, +0x12,0x96,0x00,0x42,0x00,0xE7,0x1B,0x3C,0x09,0xF1,0x00,0x42,0x01,0x09,0x12,0xD8, +0x00,0x42,0x00,0x42,0x09,0xAF,0x1B,0x7E,0x00,0x64,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0xE7,0x1B,0x9F,0x00,0xA6,0x00,0xA6,0x1A,0xFA,0x00,0x64,0x00,0x42, +0x00,0x42,0x01,0x09,0x12,0xD8,0x09,0xF1,0x09,0x4B,0x00,0x42,0x1B,0x3C,0x09,0xAF, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x09,0xF1,0x12,0xD8,0x00,0x42,0x12,0x33, +0x09,0x4B,0x00,0x42,0x09,0xF1,0x12,0xD8,0x1A,0xFA,0x12,0xD8,0x00,0x64,0x1A,0xFA, +0x00,0x42,0x09,0xF1,0x12,0xD8,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x09,0xF1, +0x09,0xF1,0x00,0x42,0x12,0xD8,0x00,0x42,0x01,0x09,0x1B,0x9F,0x1B,0x9F,0x1B,0x9F, +0x12,0xD8,0x00,0x42,0x12,0xD8,0x00,0x42,0x09,0x4B,0x12,0xD8,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x09,0xF1,0x12,0x33,0x00,0x42,0x12,0xD8,0x00,0x42,0x00,0xA6, +0x1B,0x7E,0x1B,0x9F,0x1B,0x9F,0x12,0x33,0x00,0x42,0x12,0xD8,0x00,0x42,0x09,0x4B, +0x12,0xD8,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x09,0xAF,0x1A,0xFA,0x00,0x42, +0x12,0x33,0x09,0x8D,0x00,0x42,0x01,0x09,0x1B,0x9F,0x1B,0x3C,0x00,0xE7,0x00,0xA6, +0x1A,0xFA,0x00,0x42,0x12,0x33,0x12,0x96,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0xA6,0x1B,0x9F,0x00,0xA6,0x00,0x64,0x1B,0x3C,0x00,0xE7,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x64,0x1A,0xFA,0x09,0x4B,0x00,0x42,0x1B,0x3C,0x09,0x8D,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x12,0xD8,0x12,0xD8,0x00,0x42,0x00,0xE7, +0x1A,0xFA,0x12,0x54,0x09,0xF1,0x09,0xF1,0x1A,0xFA,0x09,0x8D,0x00,0x42,0x09,0xF1, +0x1B,0x7E,0x00,0x64,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0xA6, +0x1B,0x7E,0x12,0x54,0x00,0x64,0x00,0x42,0x01,0x09,0x09,0x4B,0x01,0x09,0x00,0x64, +0x00,0x42,0x09,0xAF,0x1B,0x9F,0x09,0x4B,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0xE7,0x1B,0x3C,0x1B,0x3C,0x09,0x8D,0x00,0xA6, +0x00,0x42,0x00,0x64,0x09,0x4B,0x12,0xD8,0x1B,0x7E,0x09,0x8D,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x64, +0x09,0xF1,0x1B,0x3C,0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x1B,0x7E,0x12,0x54,0x00,0xA6, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x64,0x01,0x09,0x00,0xA6, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x64,0x00,0x64,0x00,0x42,0x00,0x64,0x00,0x64, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0xE7,0x00,0x64,0x00,0x64,0x00,0x42,0x00,0x63,0x01,0x09,0x12,0xD8,0x1A,0xFA, +0x01,0x09,0x12,0xD8,0x12,0xD8,0x01,0x09,0x00,0x64,0x01,0x09,0x12,0xD8,0x00,0xE7, +0x12,0xD8,0x12,0xD8,0x12,0xD8,0x12,0xD8,0x12,0xD8,0x00,0x42,0x00,0x42,0x1B,0x9F, +0x01,0x09,0x12,0x54,0x1B,0x3C,0x09,0xF1,0x1B,0x9F,0x09,0xF1,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x12,0xD8,0x12,0x54,0x1B,0x3C,0x00,0xE7,0x00,0xC7, +0x1B,0x7E,0x1A,0xFA,0x1B,0x9F,0x12,0xD8,0x1B,0x9F,0x1A,0xFA,0x1B,0x7E,0x00,0xE7, +0x00,0x64,0x1B,0x7E,0x09,0xAF,0x09,0xF1,0x1B,0x9F,0x1B,0x3C,0x1B,0x7E,0x09,0xAF, +0x00,0x42,0x09,0xF1,0x1B,0x9F,0x12,0xD8,0x12,0x54,0x1B,0x3C,0x09,0xF1,0x1B,0x9F, +0x09,0xF1,0x00,0xA6,0x09,0xF1,0x09,0xF1,0x09,0xF1,0x09,0xF1,0x1B,0x3C,0x12,0x54, +0x1B,0x7E,0x12,0x96,0x00,0x21,0x12,0x54,0x12,0xD8,0x1B,0x9F,0x00,0x42,0x1B,0x9F, +0x1A,0xFA,0x12,0x54,0x00,0x42,0x00,0xE7,0x09,0xF1,0x09,0x8D,0x1B,0x9F,0x1B,0x9F, +0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x00,0x42,0x12,0x33,0x1B,0x9F,0x09,0xF1,0x1B,0x9F, +0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x12,0xD8,0x00,0xA6,0x09,0xF1,0x09,0xF1,0x09,0xF1, +0x09,0xF1,0x1B,0x3C,0x12,0xD8,0x09,0xF1,0x09,0xF1,0x09,0xF0,0x1B,0x9F,0x1B,0x9F, +0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x09,0xF1,0x12,0xD8,0x1B,0x9F, +0x09,0xF1,0x1B,0x3C,0x12,0x54,0x1B,0x3C,0x09,0xF1,0x1B,0x9F,0x00,0x42,0x09,0x8D, +0x1B,0x9F,0x09,0xF1,0x1B,0x9F,0x12,0xD8,0x12,0xD8,0x1A,0xFA,0x12,0xD8,0x00,0x42, +0x09,0xF1,0x09,0xF1,0x09,0xF1,0x09,0xF1,0x1B,0x3C,0x09,0xF1,0x00,0x42,0x00,0x42, +0x00,0x21,0x01,0x09,0x09,0xF1,0x09,0xF1,0x09,0xF1,0x09,0xF1,0x09,0xF1,0x01,0x09, +0x00,0x42,0x00,0x42,0x1B,0x9F,0x09,0xF1,0x1B,0x3C,0x12,0x54,0x1B,0x3C,0x09,0xF1, +0x1B,0x9F,0x00,0x42,0x1B,0x3C,0x1B,0x9F,0x1A,0xFA,0x1B,0x9F,0x12,0xD8,0x12,0xD8, +0x1A,0xFA,0x12,0xD8,0x00,0x42,0x09,0xF1,0x12,0xD8,0x1B,0x3C,0x09,0xF1,0x12,0x54, +0x12,0x54,0x00,0x42,0x00,0x42,0x00,0x21,0x09,0xF1,0x12,0xD8,0x09,0xF1,0x09,0xF1, +0x09,0xF1,0x12,0xD8,0x09,0xF1,0x00,0x42,0x00,0x42,0x1B,0x9F,0x09,0xF1,0x1B,0x3C, +0x12,0x54,0x1B,0x3C,0x09,0xF1,0x1B,0x9F,0x00,0x42,0x12,0xD8,0x1B,0x9F,0x01,0x09, +0x12,0xD8,0x1A,0xFA,0x1B,0x7E,0x12,0xD8,0x12,0x96,0x00,0xA6,0x00,0x42,0x09,0xF1, +0x12,0xD8,0x00,0x42,0x09,0x8D,0x1B,0x3C,0x00,0x42,0x09,0xAF,0x00,0x21,0x09,0xF1, +0x1B,0x3C,0x12,0xD8,0x12,0xD8,0x12,0xD8,0x1B,0x3C,0x09,0xF1,0x00,0x42,0x09,0x8D, +0x1B,0x9F,0x12,0xD8,0x12,0xD8,0x00,0xE7,0x12,0x33,0x1B,0x9F,0x12,0xD8,0x00,0x42, +0x00,0xA6,0x1B,0x9F,0x01,0x09,0x12,0x33,0x1B,0x7E,0x1B,0x9F,0x1A,0xFA,0x09,0xF1, +0x00,0xC7,0x09,0x8D,0x12,0xD8,0x1B,0x7E,0x12,0xD8,0x09,0xAF,0x1B,0x9F,0x09,0xAF, +0x1B,0x3C,0x00,0x21,0x09,0xF1,0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x1B,0x9F, +0x09,0xF1,0x00,0x42,0x12,0x96,0x09,0xF1,0x1B,0x3C,0x1B,0x9F,0x1B,0x9F,0x1B,0x9F, +0x1B,0x9F,0x1B,0x9F,0x09,0xAF,0x00,0x42,0x1B,0x9F,0x09,0xF1,0x1B,0x7E,0x12,0xD8, +0x09,0xAF,0x1B,0x7E,0x1B,0x3C,0x09,0x2A,0x12,0xD8,0x12,0x54,0x09,0xF1,0x09,0x8D, +0x00,0xA6,0x12,0x33,0x1B,0x9F,0x12,0x54,0x00,0x00,0x01,0x08,0x01,0x08,0x00,0x21, +0x00,0x21,0x00,0x21,0x01,0x08,0x01,0x08,0x00,0x21,0x00,0x85,0x00,0x21,0x00,0x21, +0x00,0x85,0x01,0x08,0x01,0x08,0x01,0x08,0x01,0x08,0x00,0x43,0x00,0x21,0x09,0xD0, +0x01,0x08,0x00,0x85,0x00,0x21,0x00,0x21,0x00,0x43,0x09,0x2A,0x00,0x43,0x00,0x21, +0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x01,0x08,0x00,0x43, +}; + +const unsigned char gImage_UI0902_TabBack_Sel_35x27[1890] = { /* 35x27 RGB565 BE */ +0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21, +0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21, +0x09,0x6C,0x09,0xAE,0x00,0x85,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21, +0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21, +0x00,0x21,0x00,0x21,0x00,0x00,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x09,0x4B,0x12,0x54,0x1B,0x7E,0x1B,0x9F,0x1B,0x7E,0x1B,0x9F,0x12,0x96,0x09,0x8D, +0x00,0x64,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0xE7,0x12,0x33,0x1B,0x7E,0x1B,0x9F,0x1A,0xFA,0x09,0x8D,0x00,0x64,0x00,0x42, +0x09,0x4B,0x12,0x54,0x1B,0x7E,0x1B,0x9F,0x12,0x96,0x09,0x4B,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x09,0x8D,0x1B,0x3C,0x1B,0x9F,0x1A,0xFA,0x09,0xAF,0x00,0xA6,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x64,0x09,0x8D,0x12,0x96, +0x1B,0x9F,0x1B,0x7E,0x12,0x33,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x09,0xF1,0x1B,0x9F,0x1B,0x7E,0x12,0x54, +0x09,0x4B,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0xE7,0x12,0x33,0x1B,0x3C,0x1B,0x9F,0x1B,0x9F,0x01,0x09,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x64,0x09,0x8D,0x1A,0xFA,0x1B,0x9F,0x1B,0x7E,0x12,0x33,0x00,0xE7,0x00,0x42, +0x00,0x42,0x00,0xA6,0x09,0xAF,0x1A,0xFA,0x1B,0x9F,0x1B,0x3C,0x12,0x33,0x00,0xA6, +0x1B,0x9F,0x01,0x09,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x09,0xF1,0x1A,0xFA,0x09,0xAF, +0x1A,0xFA,0x1B,0x9F,0x1B,0x3C,0x1A,0xFA,0x1B,0x9F,0x1B,0x7E,0x12,0x33,0x00,0xE7, +0x00,0xA6,0x00,0x42,0x00,0x42,0x1B,0x9F,0x01,0x09,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x09,0xF1,0x12,0xD8,0x00,0x42,0x00,0x42,0x00,0xA6,0x09,0xF1,0x09,0xF1,0x09,0x4B, +0x00,0x42,0x00,0x42,0x09,0xAF,0x12,0xD8,0x00,0x42,0x00,0x42,0x12,0xD8,0x00,0xA6, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x09,0xF1,0x12,0xD8,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x09,0xF1,0x12,0xD8,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x09,0xF1,0x1A,0xFA, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x12,0x33,0x12,0xD8,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0xA6,0x1B,0x9F,0x1A,0xFA,0x09,0xAF,0x01,0x09,0x00,0xA6,0x00,0x64, +0x01,0x09,0x09,0x8D,0x12,0x54,0x1B,0x9F,0x09,0xF1,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0xA6,0x12,0x54,0x1B,0x3C, +0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x12,0x96,0x09,0x4B,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0xE7,0x00,0xE7,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x42,0x00,0x42, +0x00,0x64,0x12,0xD8,0x00,0xA6,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x12,0x33,0x09,0x8D,0x12,0x33,0x09,0x8D,0x00,0x42,0x00,0x42,0x00,0x42, +0x09,0x8D,0x09,0x8D,0x00,0x42,0x12,0x33,0x00,0xE7,0x09,0x8D,0x09,0x8D,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0xE7,0x12,0x33,0x12,0x33,0x00,0xE7, +0x00,0x21,0x12,0x33,0x12,0xD8,0x1A,0xFA,0x1B,0x9F,0x12,0xD8,0x12,0xD8,0x12,0xD8, +0x12,0x33,0x00,0x42,0x00,0xA6,0x00,0x42,0x12,0xD8,0x09,0xF1,0x12,0xD8,0x09,0xF1, +0x00,0x64,0x00,0x64,0x00,0x64,0x12,0x54,0x12,0x54,0x1A,0xFA,0x1B,0x9F,0x1B,0x9F, +0x1B,0x9F,0x1B,0x9F,0x12,0xD8,0x00,0xA6,0x01,0x09,0x01,0x09,0x01,0x09,0x09,0xAF, +0x1A,0xFA,0x12,0x54,0x1B,0x9F,0x00,0x85,0x00,0xE7,0x01,0x09,0x1A,0xFA,0x12,0x96, +0x01,0x09,0x01,0x09,0x01,0x09,0x00,0xE7,0x00,0x42,0x1B,0x7E,0x09,0x4B,0x12,0xD8, +0x09,0xF1,0x12,0xD8,0x09,0xF1,0x12,0x33,0x12,0x96,0x01,0x09,0x1B,0x9F,0x1B,0x9F, +0x12,0xD8,0x1B,0x3C,0x12,0x54,0x12,0xD8,0x12,0xD8,0x00,0xA6,0x09,0x8D,0x12,0xD8, +0x12,0xD8,0x12,0xD8,0x1A,0xFA,0x1B,0x9F,0x12,0xD8,0x12,0xD8,0x09,0x6C,0x1B,0x9F, +0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x00,0x42, +0x12,0x54,0x12,0x96,0x12,0xD8,0x09,0xF1,0x12,0xD8,0x09,0xF1,0x1B,0x7E,0x09,0x8D, +0x00,0x42,0x1A,0xFA,0x12,0x96,0x09,0xF1,0x1B,0x3C,0x12,0xD8,0x12,0xD8,0x1B,0x7E, +0x01,0x09,0x00,0xA6,0x01,0x09,0x01,0x09,0x01,0x09,0x09,0xAF,0x1B,0x9F,0x00,0x42, +0x00,0x42,0x00,0x21,0x00,0x42,0x09,0xAF,0x1B,0x9F,0x09,0xF1,0x09,0xF1,0x09,0xF1, +0x09,0xF1,0x00,0xA6,0x00,0x42,0x00,0xE7,0x1B,0x9F,0x1B,0x3C,0x09,0xF1,0x12,0xD8, +0x1B,0x3C,0x1B,0x7E,0x00,0x42,0x00,0xE7,0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x12,0xD8, +0x09,0xF1,0x09,0xF1,0x1B,0x3C,0x01,0x09,0x09,0xF1,0x1B,0x9F,0x1B,0x9F,0x1B,0x9F, +0x12,0xD8,0x1B,0x9F,0x00,0x64,0x00,0x42,0x00,0x21,0x00,0x42,0x09,0xAF,0x12,0xD8, +0x12,0xD8,0x12,0xD8,0x1B,0x7E,0x1B,0x9F,0x00,0xE7,0x00,0x42,0x00,0x42,0x1B,0x3C, +0x1B,0x7E,0x09,0xF1,0x12,0xD8,0x1B,0x7E,0x09,0xF1,0x00,0x42,0x09,0xF1,0x1B,0x7E, +0x12,0x33,0x12,0x33,0x12,0xD8,0x1B,0x7E,0x1B,0x3C,0x12,0xD8,0x09,0x4B,0x00,0x42, +0x00,0x42,0x1B,0x9F,0x01,0x09,0x00,0x42,0x1B,0x7E,0x09,0x4B,0x00,0xA6,0x00,0x43, +0x00,0x42,0x1B,0x7E,0x1B,0x3C,0x09,0xAF,0x12,0x33,0x1B,0x7E,0x09,0x8D,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x12,0xD8,0x09,0xF1,0x12,0xD8,0x09,0xF1,0x00,0x42, +0x00,0x42,0x09,0x4B,0x12,0x33,0x09,0xF1,0x12,0xD8,0x1A,0xFA,0x1B,0x9F,0x1B,0x9F, +0x12,0xD8,0x12,0x33,0x00,0x42,0x00,0x64,0x1B,0x9F,0x09,0xF1,0x09,0xF1,0x12,0x54, +0x12,0x54,0x12,0x33,0x09,0xD0,0x00,0x42,0x00,0x64,0x09,0xAF,0x1A,0xFA,0x1B,0x9F, +0x1B,0x3C,0x09,0x4B,0x00,0x42,0x00,0xE7,0x12,0xD8,0x12,0xD8,0x1B,0x7E,0x1B,0x3C, +0x1B,0x7E,0x1B,0x3C,0x12,0xD8,0x12,0xD8,0x00,0x42,0x09,0xF1,0x12,0x33,0x09,0xAF, +0x1B,0x3C,0x12,0x96,0x1B,0x7E,0x12,0xD8,0x09,0x4B,0x12,0x96,0x1B,0x9F,0x1B,0x7E, +0x12,0xD8,0x12,0x96,0x01,0x09,0x1B,0x7E,0x1B,0x7E,0x00,0xC7,0x00,0x21,0x00,0x21, +0x00,0x21,0x00,0x21,0x00,0x85,0x12,0x12,0x09,0xF0,0x00,0x21,0x00,0x63,0x01,0x09, +0x01,0x09,0x01,0x09,0x01,0x09,0x01,0x09,0x01,0x09,0x01,0x09,0x01,0x09,0x00,0x21, +0x09,0x6D,0x09,0xAE,0x12,0x96,0x09,0x2B,0x00,0x21,0x00,0x63,0x09,0xAE,0x12,0x12, +0x00,0x63,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x21,0x09,0x6D,0x12,0x12, +0x00,0x00, +}; + +const unsigned char gImage_UI0902_TabBack_Not_18x28[1008] = { /* 18x28 RGB565 BE */ +0x00,0x00,0x00,0x21,0x00,0x21,0x00,0x21,0x00,0x85,0x01,0x09,0x00,0x21,0x1B,0x7E, +0x12,0x12,0x12,0x96,0x12,0x54,0x00,0x21,0x09,0x6D,0x00,0x63,0x00,0x21,0x00,0x21, +0x00,0x21,0x00,0x00,0x00,0x21,0x00,0x42,0x00,0x42,0x09,0x8D,0x1B,0x9F,0x1B,0x7E, +0x1B,0x7E,0x1A,0xFA,0x00,0x42,0x00,0xA6,0x1B,0x7E,0x1B,0x7E,0x1B,0x7E,0x1B,0x7E, +0x00,0xE7,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x21,0x00,0x42,0x00,0x64,0x1B,0x9F, +0x00,0xE7,0x00,0x64,0x01,0x09,0x00,0x42,0x01,0x09,0x00,0xE7,0x00,0x64,0x01,0x09, +0x00,0x42,0x09,0xF1,0x12,0xD8,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x21,0x00,0x42, +0x00,0x42,0x1A,0xFA,0x01,0x09,0x00,0x42,0x12,0x33,0x1B,0x9F,0x1A,0xFA,0x1B,0x7E, +0x1B,0x3C,0x09,0x8D,0x00,0x42,0x09,0xF1,0x12,0x33,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x21,0x09,0x4B,0x12,0x33,0x1B,0x7E,0x00,0xA6,0x12,0x96,0x1A,0xFA,0x00,0xA6, +0x00,0x42,0x00,0x42,0x01,0x09,0x1B,0x7E,0x09,0x8D,0x09,0x8D,0x1B,0x7E,0x09,0xF1, +0x00,0xA6,0x00,0x21,0x00,0x21,0x12,0xD8,0x12,0x54,0x00,0xE7,0x01,0x09,0x1B,0x3C, +0x00,0x64,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0xE7,0x1B,0x7E,0x00,0x64, +0x09,0x4B,0x12,0xD8,0x09,0xF1,0x00,0x21,0x00,0x21,0x1B,0x7E,0x00,0xE7,0x00,0x42, +0x12,0x33,0x09,0xF1,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x1A,0xFA,0x01,0x09,0x00,0x42,0x09,0xF1,0x12,0x54,0x00,0x21,0x00,0x21,0x12,0xD8, +0x1B,0x3C,0x00,0xA6,0x12,0x96,0x09,0xAF,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x12,0xD8,0x01,0x09,0x09,0x4B,0x1B,0x9F,0x09,0xF1,0x00,0x21, +0x00,0x21,0x00,0x42,0x12,0xD8,0x09,0xAF,0x09,0xF1,0x12,0x54,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x1B,0x3C,0x01,0x09,0x12,0x96,0x09,0xAF, +0x00,0x42,0x00,0x21,0x00,0x21,0x01,0x09,0x1B,0x9F,0x01,0x09,0x00,0xA6,0x1B,0x9F, +0x00,0xE7,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x09,0xF1,0x1B,0x3C,0x00,0x42, +0x12,0x33,0x1B,0x3C,0x00,0x64,0x00,0x21,0x00,0x21,0x09,0x8D,0x1B,0x3C,0x00,0x42, +0x00,0x42,0x09,0x8D,0x1B,0x7E,0x09,0xF1,0x01,0x09,0x01,0x09,0x12,0x96,0x1B,0x7E, +0x00,0xE7,0x00,0x42,0x00,0xE7,0x1B,0x9F,0x00,0xA6,0x00,0x21,0x00,0x21,0x00,0x42, +0x12,0xD8,0x1A,0xFA,0x12,0xD8,0x00,0xE7,0x00,0xE7,0x12,0x54,0x12,0xD8,0x12,0xD8, +0x12,0x33,0x00,0x64,0x09,0xAF,0x12,0xD8,0x1B,0x3C,0x09,0xF1,0x00,0x42,0x00,0x21, +0x00,0x21,0x00,0x42,0x00,0xA6,0x09,0x8D,0x09,0xF1,0x1B,0x7E,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0xE7,0x1B,0x7E,0x09,0x4B,0x09,0x8D,0x00,0x64, +0x00,0x42,0x00,0x21,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x01,0x09,0x1B,0x7E, +0x09,0x8D,0x09,0xAF,0x1B,0x9F,0x1B,0x9F,0x01,0x09,0x12,0x33,0x1B,0x7E,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x09,0xAF,0x1A,0xFA,0x1B,0x7E,0x00,0xE7,0x09,0xAF,0x1B,0x9F,0x12,0x96, +0x09,0x4B,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x21,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21, +0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x21,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x21,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42, +0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x21,0x00,0x21,0x12,0x96, +0x00,0xA6,0x00,0xA6,0x09,0xF1,0x09,0xF1,0x09,0xF1,0x01,0x09,0x00,0x42,0x00,0xA6, +0x09,0xF1,0x09,0xF1,0x09,0xF1,0x09,0xF1,0x09,0xF1,0x09,0xF1,0x09,0xF1,0x00,0x21, +0x00,0x21,0x12,0x96,0x1A,0xFA,0x01,0x09,0x1B,0x9F,0x09,0xF1,0x12,0xD8,0x09,0xF1, +0x00,0x42,0x01,0x09,0x1B,0x9F,0x12,0x54,0x1B,0x9F,0x12,0x54,0x1B,0x9F,0x12,0x54, +0x1B,0x9F,0x00,0x21,0x00,0x21,0x00,0x64,0x09,0xF1,0x12,0x54,0x12,0x33,0x00,0x42, +0x09,0xF1,0x1B,0x3C,0x09,0x4B,0x01,0x09,0x12,0xD8,0x12,0xD8,0x1A,0xFA,0x1B,0x9F, +0x12,0xD8,0x12,0xD8,0x12,0xD8,0x00,0x43,0x09,0xD0,0x1B,0x9F,0x12,0x33,0x1A,0xFA, +0x09,0x4B,0x01,0x09,0x09,0x8D,0x12,0xD8,0x01,0x09,0x01,0x09,0x12,0x96,0x12,0xD8, +0x1A,0xFA,0x1B,0x9F,0x12,0xD8,0x12,0xD8,0x12,0x54,0x00,0x85,0x00,0x21,0x12,0xD8, +0x09,0xF1,0x12,0x96,0x1B,0x7E,0x12,0xD8,0x1B,0x3C,0x1B,0x9F,0x00,0x42,0x00,0x42, +0x12,0xD8,0x1B,0x3C,0x12,0xD8,0x12,0xD8,0x12,0xD8,0x1B,0x7E,0x09,0xF1,0x00,0x21, +0x00,0x21,0x12,0xD8,0x09,0xF1,0x09,0x4B,0x1B,0x7E,0x09,0x4B,0x1A,0xFA,0x12,0x33, +0x00,0x42,0x00,0x42,0x12,0xD8,0x1B,0x3C,0x12,0xD8,0x12,0xD8,0x12,0xD8,0x1B,0x7E, +0x09,0xF1,0x00,0x21,0x00,0x21,0x12,0xD8,0x1B,0x9F,0x12,0x33,0x09,0xF1,0x1B,0x9F, +0x1B,0x7E,0x00,0x42,0x00,0x42,0x00,0x42,0x12,0xD8,0x1B,0x3C,0x12,0xD8,0x12,0xD8, +0x12,0xD8,0x1B,0x7E,0x09,0xF1,0x00,0x21,0x00,0x21,0x1B,0x3C,0x1B,0x7E,0x1A,0xFA, +0x1B,0x9F,0x12,0xD8,0x1B,0x7E,0x1B,0x3C,0x09,0xAF,0x09,0x8D,0x1B,0x3C,0x1B,0x9F, +0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x1B,0x9F,0x12,0xD8,0x01,0x08,0x00,0x00,0x00,0x85, +0x00,0x85,0x12,0x54,0x00,0xC7,0x00,0x21,0x00,0x63,0x09,0xAE,0x09,0x2B,0x09,0x6D, +0x09,0xF0,0x09,0xF0,0x09,0xF0,0x09,0xF0,0x09,0xF0,0x09,0xF0,0x09,0xF0,0x00,0xE8, +}; diff --git a/device/LCD_ILI9341/Drv_ILI9341_Lcd_Image_UI0902.h b/device/LCD_ILI9341/Drv_ILI9341_Lcd_Image_UI0902.h new file mode 100644 index 0000000..1b66c0a --- /dev/null +++ b/device/LCD_ILI9341/Drv_ILI9341_Lcd_Image_UI0902.h @@ -0,0 +1,19 @@ +#ifndef __DRV_ILI9341_LCD_IMAGE_UI0902_H +#define __DRV_ILI9341_LCD_IMAGE_UI0902_H + +#include "stdint.h" + +extern const unsigned char gImage_UI0902_BatteryOutline_29x12[]; +extern const unsigned char gImage_UI0902_Volume_20x15[600]; +extern const unsigned char gImage_UI0902_Bluetooth_11x17[374]; +extern const unsigned char gImage_UI0902_BatteryFill_22x9[396]; +extern const unsigned char gImage_UI0902_TabSetting_Sel_36x28[2016]; +extern const unsigned char gImage_UI0902_TabSetting_Not_35x28[1960]; +extern const unsigned char gImage_UI0902_TabMixer_Sel_35x27[1890]; +extern const unsigned char gImage_UI0902_TabMixer_Not_18x28[1008]; +extern const unsigned char gImage_UI0902_TabMode_Sel_36x28[2016]; +extern const unsigned char gImage_UI0902_TabMode_Not_35x29[2030]; +extern const unsigned char gImage_UI0902_TabBack_Sel_35x27[1890]; +extern const unsigned char gImage_UI0902_TabBack_Not_18x28[1008]; + +#endif diff --git a/project/IAR_V7.4/YNGJ-GT1-M.ewp b/project/IAR_V7.4/YNGJ-GT1-M.ewp index 8ff421a..54329dc 100644 --- a/project/IAR_V7.4/YNGJ-GT1-M.ewp +++ b/project/IAR_V7.4/YNGJ-GT1-M.ewp @@ -2085,10 +2085,10 @@ $PROJ_DIR$\..\..\device\LCD_ILI9341\Drv_ILI9341_Lcd_Image.c - $PROJ_DIR$\..\..\device\LCD_ILI9341\Drv_ILI9341_Lcd_Image_ModeSelect0831.c + $PROJ_DIR$\..\..\device\LCD_ILI9341\Drv_ILI9341_Lcd_Image_UI0902.c - $PROJ_DIR$\..\..\device\LCD_ILI9341\Drv_ILI9341_Lcd_Image_ModeSelect0831.h + $PROJ_DIR$\..\..\device\LCD_ILI9341\Drv_ILI9341_Lcd_Image_UI0902.h $PROJ_DIR$\..\..\device\LCD_ILI9341\Drv_ILI9341_Lcd_Image.h diff --git a/project/inc/UI0902_Res_Addr.h b/project/inc/UI0902_Res_Addr.h new file mode 100644 index 0000000..9c85fef --- /dev/null +++ b/project/inc/UI0902_Res_Addr.h @@ -0,0 +1,283 @@ +#ifndef __UI0902_RES_ADDR_H +#define __UI0902_RES_ADDR_H + +/* Auto-generated by tools/gen_ui0902_assets.py. W25Q128 resource map. */ +#define UI0902_RES_BASE 0x00100000UL + +#define UI0902_ROW_UNIVERSAL_NOT_ADDR (UI0902_RES_BASE + 0x000000UL) /* 37296 bytes */ +#define UI0902_ROW_UNIVERSAL_NOT_W 222 +#define UI0902_ROW_UNIVERSAL_NOT_H 84 + +#define UI0902_ROW_UNIVERSAL_SEL_ADDR (UI0902_RES_BASE + 0x00A000UL) /* 37296 bytes */ +#define UI0902_ROW_UNIVERSAL_SEL_W 222 +#define UI0902_ROW_UNIVERSAL_SEL_H 84 + +#define UI0902_ROW_NORMAL_NOT_ADDR (UI0902_RES_BASE + 0x014000UL) /* 37296 bytes */ +#define UI0902_ROW_NORMAL_NOT_W 222 +#define UI0902_ROW_NORMAL_NOT_H 84 + +#define UI0902_ROW_NORMAL_SEL_ADDR (UI0902_RES_BASE + 0x01E000UL) /* 37296 bytes */ +#define UI0902_ROW_NORMAL_SEL_W 222 +#define UI0902_ROW_NORMAL_SEL_H 84 + +#define UI0902_ROW_EXPERT_NOT_ADDR (UI0902_RES_BASE + 0x028000UL) /* 37296 bytes */ +#define UI0902_ROW_EXPERT_NOT_W 222 +#define UI0902_ROW_EXPERT_NOT_H 84 + +#define UI0902_ROW_EXPERT_SEL_ADDR (UI0902_RES_BASE + 0x032000UL) /* 37296 bytes */ +#define UI0902_ROW_EXPERT_SEL_W 222 +#define UI0902_ROW_EXPERT_SEL_H 84 + +#define UI0902_ICON_UNIVERSAL_SEL_ADDR (UI0902_RES_BASE + 0x03C000UL) /* 2730 bytes */ +#define UI0902_ICON_UNIVERSAL_SEL_W 39 +#define UI0902_ICON_UNIVERSAL_SEL_H 35 + +#define UI0902_ICON_UNIVERSAL_NOT_ADDR (UI0902_RES_BASE + 0x03D000UL) /* 2736 bytes */ +#define UI0902_ICON_UNIVERSAL_NOT_W 38 +#define UI0902_ICON_UNIVERSAL_NOT_H 36 + +#define UI0902_ICON_NORMAL_SEL_ADDR (UI0902_RES_BASE + 0x03E000UL) /* 3200 bytes */ +#define UI0902_ICON_NORMAL_SEL_W 40 +#define UI0902_ICON_NORMAL_SEL_H 40 + +#define UI0902_ICON_NORMAL_NOT_ADDR (UI0902_RES_BASE + 0x03F000UL) /* 3280 bytes */ +#define UI0902_ICON_NORMAL_NOT_W 41 +#define UI0902_ICON_NORMAL_NOT_H 40 + +#define UI0902_ICON_EXPERT_SEL_ADDR (UI0902_RES_BASE + 0x040000UL) /* 2760 bytes */ +#define UI0902_ICON_EXPERT_SEL_W 46 +#define UI0902_ICON_EXPERT_SEL_H 30 + +#define UI0902_ICON_EXPERT_NOT_ADDR (UI0902_RES_BASE + 0x041000UL) /* 2760 bytes */ +#define UI0902_ICON_EXPERT_NOT_W 46 +#define UI0902_ICON_EXPERT_NOT_H 30 + +#define UI0902_TXT_MODE_UNIVERSAL_NOT_ADDR (UI0902_RES_BASE + 0x042000UL) /* 3360 bytes */ +#define UI0902_TXT_MODE_UNIVERSAL_NOT_W 80 +#define UI0902_TXT_MODE_UNIVERSAL_NOT_H 21 + +#define UI0902_TXT_MODE_UNIVERSAL_SEL_ADDR (UI0902_RES_BASE + 0x043000UL) /* 3318 bytes */ +#define UI0902_TXT_MODE_UNIVERSAL_SEL_W 79 +#define UI0902_TXT_MODE_UNIVERSAL_SEL_H 21 + +#define UI0902_TXT_MODE_NORMAL_NOT_ADDR (UI0902_RES_BASE + 0x044000UL) /* 3318 bytes */ +#define UI0902_TXT_MODE_NORMAL_NOT_W 79 +#define UI0902_TXT_MODE_NORMAL_NOT_H 21 + +#define UI0902_TXT_MODE_NORMAL_SEL_ADDR (UI0902_RES_BASE + 0x045000UL) /* 3360 bytes */ +#define UI0902_TXT_MODE_NORMAL_SEL_W 80 +#define UI0902_TXT_MODE_NORMAL_SEL_H 21 + +#define UI0902_TXT_MODE_EXPERT_NOT_ADDR (UI0902_RES_BASE + 0x046000UL) /* 3360 bytes */ +#define UI0902_TXT_MODE_EXPERT_NOT_W 80 +#define UI0902_TXT_MODE_EXPERT_NOT_H 21 + +#define UI0902_TXT_MODE_EXPERT_SEL_ADDR (UI0902_RES_BASE + 0x047000UL) /* 3360 bytes */ +#define UI0902_TXT_MODE_EXPERT_SEL_W 80 +#define UI0902_TXT_MODE_EXPERT_SEL_H 21 + +#define UI0902_ICON_SET_BLUETOOTH_ADDR (UI0902_RES_BASE + 0x048000UL) /* 2244 bytes */ +#define UI0902_ICON_SET_BLUETOOTH_W 34 +#define UI0902_ICON_SET_BLUETOOTH_H 33 + +#define UI0902_ICON_SET_GEAR_ADDR (UI0902_RES_BASE + 0x049000UL) /* 2244 bytes */ +#define UI0902_ICON_SET_GEAR_W 33 +#define UI0902_ICON_SET_GEAR_H 34 + +#define UI0902_ICON_CHEVRON_ADDR (UI0902_RES_BASE + 0x04A000UL) /* 360 bytes */ +#define UI0902_ICON_CHEVRON_W 10 +#define UI0902_ICON_CHEVRON_H 18 + +#define UI0902_ROW_SET_BLUETOOTH_ADDR (UI0902_RES_BASE + 0x04B000UL) /* 11484 bytes */ +#define UI0902_ROW_SET_BLUETOOTH_W 174 +#define UI0902_ROW_SET_BLUETOOTH_H 33 + +#define UI0902_ROW_SET_SYSTEM_ADDR (UI0902_RES_BASE + 0x04E000UL) /* 11484 bytes */ +#define UI0902_ROW_SET_SYSTEM_W 174 +#define UI0902_ROW_SET_SYSTEM_H 33 + +#define UI0902_ICON_SYS_LANG_ADDR (UI0902_RES_BASE + 0x051000UL) /* 760 bytes */ +#define UI0902_ICON_SYS_LANG_W 20 +#define UI0902_ICON_SYS_LANG_H 19 + +#define UI0902_ICON_SYS_RESTORE_ADDR (UI0902_RES_BASE + 0x052000UL) /* 546 bytes */ +#define UI0902_ICON_SYS_RESTORE_W 13 +#define UI0902_ICON_SYS_RESTORE_H 21 + +#define UI0902_ICON_SYS_ABOUT_ADDR (UI0902_RES_BASE + 0x053000UL) /* 756 bytes */ +#define UI0902_ICON_SYS_ABOUT_W 18 +#define UI0902_ICON_SYS_ABOUT_H 21 + +#define UI0902_ICON_SYS_VERSION_ADDR (UI0902_RES_BASE + 0x054000UL) /* 684 bytes */ +#define UI0902_ICON_SYS_VERSION_W 19 +#define UI0902_ICON_SYS_VERSION_H 18 + +#define UI0902_TXT_SET_LANG_ADDR (UI0902_RES_BASE + 0x055000UL) /* 1326 bytes */ +#define UI0902_TXT_SET_LANG_W 51 +#define UI0902_TXT_SET_LANG_H 13 + +#define UI0902_TXT_SET_RESTORE_ADDR (UI0902_RES_BASE + 0x056000UL) /* 1326 bytes */ +#define UI0902_TXT_SET_RESTORE_W 51 +#define UI0902_TXT_SET_RESTORE_H 13 + +#define UI0902_TXT_SET_ABOUT_ADDR (UI0902_RES_BASE + 0x057000UL) /* 1300 bytes */ +#define UI0902_TXT_SET_ABOUT_W 50 +#define UI0902_TXT_SET_ABOUT_H 13 + +#define UI0902_TXT_SET_VERSION_ADDR (UI0902_RES_BASE + 0x058000UL) /* 2156 bytes */ +#define UI0902_TXT_SET_VERSION_W 77 +#define UI0902_TXT_SET_VERSION_H 14 + +#define UI0902_TXT_SET2_A_ADDR (UI0902_RES_BASE + 0x059000UL) /* 3822 bytes */ +#define UI0902_TXT_SET2_A_W 91 +#define UI0902_TXT_SET2_A_H 21 + +#define UI0902_TXT_SET2_B_ADDR (UI0902_RES_BASE + 0x05A000UL) /* 440 bytes */ +#define UI0902_TXT_SET2_B_W 22 +#define UI0902_TXT_SET2_B_H 10 + +#define UI0902_TXT_SET2_C_ADDR (UI0902_RES_BASE + 0x05B000UL) /* 220 bytes */ +#define UI0902_TXT_SET2_C_W 11 +#define UI0902_TXT_SET2_C_H 10 + +#define UI0902_TXT_SET2_D_ADDR (UI0902_RES_BASE + 0x05C000UL) /* 768 bytes */ +#define UI0902_TXT_SET2_D_W 32 +#define UI0902_TXT_SET2_D_H 12 + +#define UI0902_BTN_TYPE_ACOUSTIC_SEL_ADDR (UI0902_RES_BASE + 0x05D000UL) /* 2166 bytes */ +#define UI0902_BTN_TYPE_ACOUSTIC_SEL_W 57 +#define UI0902_BTN_TYPE_ACOUSTIC_SEL_H 19 + +#define UI0902_BTN_TYPE_SING_NOT_ADDR (UI0902_RES_BASE + 0x05E000UL) /* 2166 bytes */ +#define UI0902_BTN_TYPE_SING_NOT_W 57 +#define UI0902_BTN_TYPE_SING_NOT_H 19 + +#define UI0902_BTN_TYPE_FINGER_NOT_ADDR (UI0902_RES_BASE + 0x05F000UL) /* 2166 bytes */ +#define UI0902_BTN_TYPE_FINGER_NOT_W 57 +#define UI0902_BTN_TYPE_FINGER_NOT_H 19 + +#define UI0902_BTN_TYPE_STRUM_NOT_ADDR (UI0902_RES_BASE + 0x060000UL) /* 2166 bytes */ +#define UI0902_BTN_TYPE_STRUM_NOT_W 57 +#define UI0902_BTN_TYPE_STRUM_NOT_H 19 + +#define UI0902_BTN_MINUS_BLUE_ADDR (UI0902_RES_BASE + 0x061000UL) /* 968 bytes */ +#define UI0902_BTN_MINUS_BLUE_W 22 +#define UI0902_BTN_MINUS_BLUE_H 22 + +#define UI0902_BTN_PLUS_BLUE_ADDR (UI0902_RES_BASE + 0x062000UL) /* 1012 bytes */ +#define UI0902_BTN_PLUS_BLUE_W 23 +#define UI0902_BTN_PLUS_BLUE_H 22 + +#define UI0902_BTN_MINUS_GRAY_ADDR (UI0902_RES_BASE + 0x063000UL) /* 968 bytes */ +#define UI0902_BTN_MINUS_GRAY_W 22 +#define UI0902_BTN_MINUS_GRAY_H 22 + +#define UI0902_BTN_PLUS_GRAY_ADDR (UI0902_RES_BASE + 0x064000UL) /* 968 bytes */ +#define UI0902_BTN_PLUS_GRAY_W 22 +#define UI0902_BTN_PLUS_GRAY_H 22 + +#define UI0902_SLIDER_WIDGET_ADDR (UI0902_RES_BASE + 0x065000UL) /* 14016 bytes */ +#define UI0902_SLIDER_WIDGET_W 219 +#define UI0902_SLIDER_WIDGET_H 32 + +#define UI0902_BTN_LANG_SEL_ADDR (UI0902_RES_BASE + 0x069000UL) /* 3332 bytes */ +#define UI0902_BTN_LANG_SEL_W 49 +#define UI0902_BTN_LANG_SEL_H 34 + +#define UI0902_BTN_LANG_CN1_ADDR (UI0902_RES_BASE + 0x06A000UL) /* 3264 bytes */ +#define UI0902_BTN_LANG_CN1_W 48 +#define UI0902_BTN_LANG_CN1_H 34 + +#define UI0902_BTN_LANG_CN2_ADDR (UI0902_RES_BASE + 0x06B000UL) /* 3332 bytes */ +#define UI0902_BTN_LANG_CN2_W 49 +#define UI0902_BTN_LANG_CN2_H 34 + +#define UI0902_BTN_LANG_EN_ADDR (UI0902_RES_BASE + 0x06C000UL) /* 3332 bytes */ +#define UI0902_BTN_LANG_EN_W 49 +#define UI0902_BTN_LANG_EN_H 34 + +#define UI0902_BTN_CANCEL_SM_ADDR (UI0902_RES_BASE + 0x06D000UL) /* 3430 bytes */ +#define UI0902_BTN_CANCEL_SM_W 49 +#define UI0902_BTN_CANCEL_SM_H 35 + +#define UI0902_BTN_CONFIRM_SM_ADDR (UI0902_RES_BASE + 0x06E000UL) /* 3360 bytes */ +#define UI0902_BTN_CONFIRM_SM_W 48 +#define UI0902_BTN_CONFIRM_SM_H 35 + +#define UI0902_BTN_CANCEL_SM2_ADDR (UI0902_RES_BASE + 0x06F000UL) /* 3430 bytes */ +#define UI0902_BTN_CANCEL_SM2_W 49 +#define UI0902_BTN_CANCEL_SM2_H 35 + +#define UI0902_BTN_CONFIRM_SM2_ADDR (UI0902_RES_BASE + 0x070000UL) /* 3430 bytes */ +#define UI0902_BTN_CONFIRM_SM2_W 49 +#define UI0902_BTN_CONFIRM_SM2_H 35 + +#define UI0902_BTN_CONFIRM_BIG_ADDR (UI0902_RES_BASE + 0x071000UL) /* 11872 bytes */ +#define UI0902_BTN_CONFIRM_BIG_W 106 +#define UI0902_BTN_CONFIRM_BIG_H 56 + +#define UI0902_MIXER_KNOB_ADDR (UI0902_RES_BASE + 0x074000UL) /* 1440 bytes */ +#define UI0902_MIXER_KNOB_W 30 +#define UI0902_MIXER_KNOB_H 24 + +#define UI0902_MIXER_KNOB2_ADDR (UI0902_RES_BASE + 0x075000UL) /* 1104 bytes */ +#define UI0902_MIXER_KNOB2_W 24 +#define UI0902_MIXER_KNOB2_H 23 + +#define UI0902_MIXER_TRACK_ADDR (UI0902_RES_BASE + 0x076000UL) /* 13330 bytes */ +#define UI0902_MIXER_TRACK_W 31 +#define UI0902_MIXER_TRACK_H 215 + +#define UI0902_TXT_MIXER_MIC_ADDR (UI0902_RES_BASE + 0x07A000UL) /* 700 bytes */ +#define UI0902_TXT_MIXER_MIC_W 25 +#define UI0902_TXT_MIXER_MIC_H 14 + +#define UI0902_TXT_MIXER_GUITAR_ADDR (UI0902_RES_BASE + 0x07B000UL) /* 336 bytes */ +#define UI0902_TXT_MIXER_GUITAR_W 12 +#define UI0902_TXT_MIXER_GUITAR_H 14 + +#define UI0902_TXT_MIXER_BAND_ADDR (UI0902_RES_BASE + 0x07C000UL) /* 338 bytes */ +#define UI0902_TXT_MIXER_BAND_W 13 +#define UI0902_TXT_MIXER_BAND_H 13 + +#define UI0902_TXT_MIXER_VOCALFX_ADDR (UI0902_RES_BASE + 0x07D000UL) /* 1036 bytes */ +#define UI0902_TXT_MIXER_VOCALFX_W 37 +#define UI0902_TXT_MIXER_VOCALFX_H 14 + +#define UI0902_TXT_MIXER_GUITARFX_ADDR (UI0902_RES_BASE + 0x07E000UL) /* 962 bytes */ +#define UI0902_TXT_MIXER_GUITARFX_W 37 +#define UI0902_TXT_MIXER_GUITARFX_H 13 + +#define UI0902_TXT_EFFECT_AMOUNT_ADDR (UI0902_RES_BASE + 0x07F000UL) /* 576 bytes */ +#define UI0902_TXT_EFFECT_AMOUNT_W 32 +#define UI0902_TXT_EFFECT_AMOUNT_H 9 + +#define UI0902_TXT_BAND_VOLUME_ADDR (UI0902_RES_BASE + 0x080000UL) /* 702 bytes */ +#define UI0902_TXT_BAND_VOLUME_W 39 +#define UI0902_TXT_BAND_VOLUME_H 9 + +#define UI0902_TXT_MIC_VOLUME_ADDR (UI0902_RES_BASE + 0x081000UL) /* 576 bytes */ +#define UI0902_TXT_MIC_VOLUME_W 32 +#define UI0902_TXT_MIC_VOLUME_H 9 + +#define UI0902_TXT_RESTORE_V1_ADDR (UI0902_RES_BASE + 0x082000UL) /* 1680 bytes */ +#define UI0902_TXT_RESTORE_V1_W 21 +#define UI0902_TXT_RESTORE_V1_H 40 + +#define UI0902_TXT_RESTORE_V2_ADDR (UI0902_RES_BASE + 0x083000UL) /* 1680 bytes */ +#define UI0902_TXT_RESTORE_V2_W 21 +#define UI0902_TXT_RESTORE_V2_H 40 + +#define UI0902_TXT_RESTORE_H_ADDR (UI0902_RES_BASE + 0x084000UL) /* 1128 bytes */ +#define UI0902_TXT_RESTORE_H_W 47 +#define UI0902_TXT_RESTORE_H_H 12 + +#define UI0902_TXT_RESTORE_CONFIRM_ADDR (UI0902_RES_BASE + 0x085000UL) /* 1988 bytes */ +#define UI0902_TXT_RESTORE_CONFIRM_W 71 +#define UI0902_TXT_RESTORE_CONFIRM_H 14 + +#define UI0902_BTN_CANCEL_BIG_ADDR (UI0902_RES_BASE + 0x086000UL) /* 11872 bytes */ +#define UI0902_BTN_CANCEL_BIG_W 106 +#define UI0902_BTN_CANCEL_BIG_H 56 + +#endif diff --git a/project/inc/includes.h b/project/inc/includes.h index 123d030..05477e5 100644 --- a/project/inc/includes.h +++ b/project/inc/includes.h @@ -35,7 +35,8 @@ #include "Drv_ILI9341_Lcd_Init.h" #include "Drv_ILI9341_Lcd_App.h" #include "Drv_ILI9341_Lcd_Image.h" -#include "Drv_ILI9341_Lcd_Image_ModeSelect0831.h" +#include "Drv_ILI9341_Lcd_Image_UI0902.h" +#include "UI0902_Res_Addr.h" #include "Drv_ILI9341_Lcd_Dump.h" #include "Drv_XPT2046_Touch.h" diff --git a/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-01.png b/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-01.png new file mode 100644 index 0000000..5812062 Binary files /dev/null and b/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-01.png differ diff --git a/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-02.png b/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-02.png new file mode 100644 index 0000000..a20705b Binary files /dev/null and b/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-02.png differ diff --git a/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-03.png b/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-03.png new file mode 100644 index 0000000..e917fee Binary files /dev/null and b/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-03.png differ diff --git a/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-04.png b/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-04.png new file mode 100644 index 0000000..7efdcf0 Binary files /dev/null and b/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-04.png differ diff --git a/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-05.png b/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-05.png new file mode 100644 index 0000000..591128f Binary files /dev/null and b/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-05.png differ diff --git a/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-06.png b/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-06.png new file mode 100644 index 0000000..32a41cb Binary files /dev/null and b/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-06.png differ diff --git a/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-07.png b/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-07.png new file mode 100644 index 0000000..5e9c3d5 Binary files /dev/null and b/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-07.png differ diff --git a/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-08.png b/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-08.png new file mode 100644 index 0000000..21c8e99 Binary files /dev/null and b/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-08.png differ diff --git a/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-09.png b/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-09.png new file mode 100644 index 0000000..f9a404d Binary files /dev/null and b/tools/assets_0902/01_屏幕参考/K1 触摸屏界面 0902-09.png differ diff --git a/tools/assets_0902/02_顶部图标/整体布局-10.png b/tools/assets_0902/02_顶部图标/整体布局-10.png new file mode 100644 index 0000000..503c403 Binary files /dev/null and b/tools/assets_0902/02_顶部图标/整体布局-10.png differ diff --git a/tools/assets_0902/02_顶部图标/电池图标-10.png b/tools/assets_0902/02_顶部图标/电池图标-10.png new file mode 100644 index 0000000..6358752 Binary files /dev/null and b/tools/assets_0902/02_顶部图标/电池图标-10.png differ diff --git a/tools/assets_0902/02_顶部图标/电池电量-10-11.png b/tools/assets_0902/02_顶部图标/电池电量-10-11.png new file mode 100644 index 0000000..14e17f4 Binary files /dev/null and b/tools/assets_0902/02_顶部图标/电池电量-10-11.png differ diff --git a/tools/assets_0902/02_顶部图标/背景-01.png b/tools/assets_0902/02_顶部图标/背景-01.png new file mode 100644 index 0000000..f53f44c Binary files /dev/null and b/tools/assets_0902/02_顶部图标/背景-01.png differ diff --git a/tools/assets_0902/02_顶部图标/蓝牙图标-10.png b/tools/assets_0902/02_顶部图标/蓝牙图标-10.png new file mode 100644 index 0000000..3c49d73 Binary files /dev/null and b/tools/assets_0902/02_顶部图标/蓝牙图标-10.png differ diff --git a/tools/assets_0902/02_顶部图标/音量图标-10.png b/tools/assets_0902/02_顶部图标/音量图标-10.png new file mode 100644 index 0000000..3d53a57 Binary files /dev/null and b/tools/assets_0902/02_顶部图标/音量图标-10.png differ diff --git a/tools/assets_0902/03_底部图标/底部图标-10.png b/tools/assets_0902/03_底部图标/底部图标-10.png new file mode 100644 index 0000000..2029740 Binary files /dev/null and b/tools/assets_0902/03_底部图标/底部图标-10.png differ diff --git a/tools/assets_0902/03_底部图标/底部图标-11.png b/tools/assets_0902/03_底部图标/底部图标-11.png new file mode 100644 index 0000000..c5decb7 Binary files /dev/null and b/tools/assets_0902/03_底部图标/底部图标-11.png differ diff --git a/tools/assets_0902/03_底部图标/底部图标-12.png b/tools/assets_0902/03_底部图标/底部图标-12.png new file mode 100644 index 0000000..dd92bfe Binary files /dev/null and b/tools/assets_0902/03_底部图标/底部图标-12.png differ diff --git a/tools/assets_0902/03_底部图标/底部图标-13.png b/tools/assets_0902/03_底部图标/底部图标-13.png new file mode 100644 index 0000000..09a3555 Binary files /dev/null and b/tools/assets_0902/03_底部图标/底部图标-13.png differ diff --git a/tools/assets_0902/03_底部图标/底部图标-14.png b/tools/assets_0902/03_底部图标/底部图标-14.png new file mode 100644 index 0000000..937a86c Binary files /dev/null and b/tools/assets_0902/03_底部图标/底部图标-14.png differ diff --git a/tools/assets_0902/03_底部图标/底部图标-15.png b/tools/assets_0902/03_底部图标/底部图标-15.png new file mode 100644 index 0000000..85779da Binary files /dev/null and b/tools/assets_0902/03_底部图标/底部图标-15.png differ diff --git a/tools/assets_0902/03_底部图标/底部图标-16.png b/tools/assets_0902/03_底部图标/底部图标-16.png new file mode 100644 index 0000000..673b8af Binary files /dev/null and b/tools/assets_0902/03_底部图标/底部图标-16.png differ diff --git a/tools/assets_0902/03_底部图标/底部图标-17.png b/tools/assets_0902/03_底部图标/底部图标-17.png new file mode 100644 index 0000000..d557a34 Binary files /dev/null and b/tools/assets_0902/03_底部图标/底部图标-17.png differ diff --git a/tools/assets_0902/03_底部图标/拆分/K1 触摸屏界面 0902-22.png b/tools/assets_0902/03_底部图标/拆分/K1 触摸屏界面 0902-22.png new file mode 100644 index 0000000..80337d7 Binary files /dev/null and b/tools/assets_0902/03_底部图标/拆分/K1 触摸屏界面 0902-22.png differ diff --git a/tools/assets_0902/03_底部图标/拆分/K1 触摸屏界面 0902-23.png b/tools/assets_0902/03_底部图标/拆分/K1 触摸屏界面 0902-23.png new file mode 100644 index 0000000..28a768f Binary files /dev/null and b/tools/assets_0902/03_底部图标/拆分/K1 触摸屏界面 0902-23.png differ diff --git a/tools/assets_0902/03_底部图标/拆分/K1 触摸屏界面 0902-24.png b/tools/assets_0902/03_底部图标/拆分/K1 触摸屏界面 0902-24.png new file mode 100644 index 0000000..7abcfa0 Binary files /dev/null and b/tools/assets_0902/03_底部图标/拆分/K1 触摸屏界面 0902-24.png differ diff --git a/tools/assets_0902/03_底部图标/拆分/K1 触摸屏界面 0902-25.png b/tools/assets_0902/03_底部图标/拆分/K1 触摸屏界面 0902-25.png new file mode 100644 index 0000000..f95af03 Binary files /dev/null and b/tools/assets_0902/03_底部图标/拆分/K1 触摸屏界面 0902-25.png differ diff --git a/tools/assets_0902/03_底部图标/拆分/图标-18.png b/tools/assets_0902/03_底部图标/拆分/图标-18.png new file mode 100644 index 0000000..9e505b0 Binary files /dev/null and b/tools/assets_0902/03_底部图标/拆分/图标-18.png differ diff --git a/tools/assets_0902/03_底部图标/拆分/图标-19.png b/tools/assets_0902/03_底部图标/拆分/图标-19.png new file mode 100644 index 0000000..9c08568 Binary files /dev/null and b/tools/assets_0902/03_底部图标/拆分/图标-19.png differ diff --git a/tools/assets_0902/03_底部图标/拆分/图标-20.png b/tools/assets_0902/03_底部图标/拆分/图标-20.png new file mode 100644 index 0000000..b2d44d3 Binary files /dev/null and b/tools/assets_0902/03_底部图标/拆分/图标-20.png differ diff --git a/tools/assets_0902/03_底部图标/拆分/图标-21.png b/tools/assets_0902/03_底部图标/拆分/图标-21.png new file mode 100644 index 0000000..24b0e6e Binary files /dev/null and b/tools/assets_0902/03_底部图标/拆分/图标-21.png differ diff --git a/tools/assets_0902/03_底部图标/整体布局-10-10.png b/tools/assets_0902/03_底部图标/整体布局-10-10.png new file mode 100644 index 0000000..583c1d9 Binary files /dev/null and b/tools/assets_0902/03_底部图标/整体布局-10-10.png differ diff --git a/tools/assets_0902/04_模式图标/万能模式图标-1.png b/tools/assets_0902/04_模式图标/万能模式图标-1.png new file mode 100644 index 0000000..cc846c2 Binary files /dev/null and b/tools/assets_0902/04_模式图标/万能模式图标-1.png differ diff --git a/tools/assets_0902/04_模式图标/万能模式图标-2.png b/tools/assets_0902/04_模式图标/万能模式图标-2.png new file mode 100644 index 0000000..73fbc0a Binary files /dev/null and b/tools/assets_0902/04_模式图标/万能模式图标-2.png differ diff --git a/tools/assets_0902/04_模式图标/专业模式图标-5.png b/tools/assets_0902/04_模式图标/专业模式图标-5.png new file mode 100644 index 0000000..c9d5720 Binary files /dev/null and b/tools/assets_0902/04_模式图标/专业模式图标-5.png differ diff --git a/tools/assets_0902/04_模式图标/专业模式图标-6.png b/tools/assets_0902/04_模式图标/专业模式图标-6.png new file mode 100644 index 0000000..07bce15 Binary files /dev/null and b/tools/assets_0902/04_模式图标/专业模式图标-6.png differ diff --git a/tools/assets_0902/04_模式图标/完整版/文字/模式选择文字-10.png b/tools/assets_0902/04_模式图标/完整版/文字/模式选择文字-10.png new file mode 100644 index 0000000..a393110 Binary files /dev/null and b/tools/assets_0902/04_模式图标/完整版/文字/模式选择文字-10.png differ diff --git a/tools/assets_0902/04_模式图标/完整版/文字/模式选择文字-11.png b/tools/assets_0902/04_模式图标/完整版/文字/模式选择文字-11.png new file mode 100644 index 0000000..014b6da Binary files /dev/null and b/tools/assets_0902/04_模式图标/完整版/文字/模式选择文字-11.png differ diff --git a/tools/assets_0902/04_模式图标/完整版/文字/模式选择文字-12.png b/tools/assets_0902/04_模式图标/完整版/文字/模式选择文字-12.png new file mode 100644 index 0000000..a28c844 Binary files /dev/null and b/tools/assets_0902/04_模式图标/完整版/文字/模式选择文字-12.png differ diff --git a/tools/assets_0902/04_模式图标/完整版/文字/模式选择文字-13.png b/tools/assets_0902/04_模式图标/完整版/文字/模式选择文字-13.png new file mode 100644 index 0000000..110c332 Binary files /dev/null and b/tools/assets_0902/04_模式图标/完整版/文字/模式选择文字-13.png differ diff --git a/tools/assets_0902/04_模式图标/完整版/文字/模式选择文字-14.png b/tools/assets_0902/04_模式图标/完整版/文字/模式选择文字-14.png new file mode 100644 index 0000000..a965570 Binary files /dev/null and b/tools/assets_0902/04_模式图标/完整版/文字/模式选择文字-14.png differ diff --git a/tools/assets_0902/04_模式图标/完整版/文字/模式选择文字-15.png b/tools/assets_0902/04_模式图标/完整版/文字/模式选择文字-15.png new file mode 100644 index 0000000..17f61e2 Binary files /dev/null and b/tools/assets_0902/04_模式图标/完整版/文字/模式选择文字-15.png differ diff --git a/tools/assets_0902/04_模式图标/完整版/模式界面栏背景-16.png b/tools/assets_0902/04_模式图标/完整版/模式界面栏背景-16.png new file mode 100644 index 0000000..ce2a3af Binary files /dev/null and b/tools/assets_0902/04_模式图标/完整版/模式界面栏背景-16.png differ diff --git a/tools/assets_0902/04_模式图标/完整版/模式界面栏背景-17.png b/tools/assets_0902/04_模式图标/完整版/模式界面栏背景-17.png new file mode 100644 index 0000000..10fbd17 Binary files /dev/null and b/tools/assets_0902/04_模式图标/完整版/模式界面栏背景-17.png differ diff --git a/tools/assets_0902/04_模式图标/完整版/模式界面栏背景-18.png b/tools/assets_0902/04_模式图标/完整版/模式界面栏背景-18.png new file mode 100644 index 0000000..e25b4c9 Binary files /dev/null and b/tools/assets_0902/04_模式图标/完整版/模式界面栏背景-18.png differ diff --git a/tools/assets_0902/04_模式图标/完整版/模式界面栏背景-19.png b/tools/assets_0902/04_模式图标/完整版/模式界面栏背景-19.png new file mode 100644 index 0000000..8fafc32 Binary files /dev/null and b/tools/assets_0902/04_模式图标/完整版/模式界面栏背景-19.png differ diff --git a/tools/assets_0902/04_模式图标/完整版/模式界面栏背景-20.png b/tools/assets_0902/04_模式图标/完整版/模式界面栏背景-20.png new file mode 100644 index 0000000..72b4e6a Binary files /dev/null and b/tools/assets_0902/04_模式图标/完整版/模式界面栏背景-20.png differ diff --git a/tools/assets_0902/04_模式图标/完整版/模式界面栏背景-21.png b/tools/assets_0902/04_模式图标/完整版/模式界面栏背景-21.png new file mode 100644 index 0000000..f159a54 Binary files /dev/null and b/tools/assets_0902/04_模式图标/完整版/模式界面栏背景-21.png differ diff --git a/tools/assets_0902/04_模式图标/普通模式图标-3.png b/tools/assets_0902/04_模式图标/普通模式图标-3.png new file mode 100644 index 0000000..a86e37c Binary files /dev/null and b/tools/assets_0902/04_模式图标/普通模式图标-3.png differ diff --git a/tools/assets_0902/04_模式图标/普通模式图标-4.png b/tools/assets_0902/04_模式图标/普通模式图标-4.png new file mode 100644 index 0000000..376120f Binary files /dev/null and b/tools/assets_0902/04_模式图标/普通模式图标-4.png differ diff --git a/tools/assets_0902/04_模式图标/模式界面栏背景-10.png b/tools/assets_0902/04_模式图标/模式界面栏背景-10.png new file mode 100644 index 0000000..e4c22f6 Binary files /dev/null and b/tools/assets_0902/04_模式图标/模式界面栏背景-10.png differ diff --git a/tools/assets_0902/04_模式图标/模式界面栏背景-11.png b/tools/assets_0902/04_模式图标/模式界面栏背景-11.png new file mode 100644 index 0000000..775dd44 Binary files /dev/null and b/tools/assets_0902/04_模式图标/模式界面栏背景-11.png differ diff --git a/tools/assets_0902/05_设置图标/设置图标 完整-10.png b/tools/assets_0902/05_设置图标/设置图标 完整-10.png new file mode 100644 index 0000000..bdc15a7 Binary files /dev/null and b/tools/assets_0902/05_设置图标/设置图标 完整-10.png differ diff --git a/tools/assets_0902/05_设置图标/设置图标 完整-11.png b/tools/assets_0902/05_设置图标/设置图标 完整-11.png new file mode 100644 index 0000000..e85dc1d Binary files /dev/null and b/tools/assets_0902/05_设置图标/设置图标 完整-11.png differ diff --git a/tools/assets_0902/05_设置图标/设置图标-01.png b/tools/assets_0902/05_设置图标/设置图标-01.png new file mode 100644 index 0000000..7d7c030 Binary files /dev/null and b/tools/assets_0902/05_设置图标/设置图标-01.png differ diff --git a/tools/assets_0902/05_设置图标/设置图标-02.png b/tools/assets_0902/05_设置图标/设置图标-02.png new file mode 100644 index 0000000..6808980 Binary files /dev/null and b/tools/assets_0902/05_设置图标/设置图标-02.png differ diff --git a/tools/assets_0902/05_设置图标/设置图标-03.png b/tools/assets_0902/05_设置图标/设置图标-03.png new file mode 100644 index 0000000..f7e80d7 Binary files /dev/null and b/tools/assets_0902/05_设置图标/设置图标-03.png differ diff --git a/tools/assets_0902/06_控件/控件 2-20.png b/tools/assets_0902/06_控件/控件 2-20.png new file mode 100644 index 0000000..c17db59 Binary files /dev/null and b/tools/assets_0902/06_控件/控件 2-20.png differ diff --git a/tools/assets_0902/06_控件/控件 2-21.png b/tools/assets_0902/06_控件/控件 2-21.png new file mode 100644 index 0000000..d49db29 Binary files /dev/null and b/tools/assets_0902/06_控件/控件 2-21.png differ diff --git a/tools/assets_0902/06_控件/控件 2-22.png b/tools/assets_0902/06_控件/控件 2-22.png new file mode 100644 index 0000000..63fad6b Binary files /dev/null and b/tools/assets_0902/06_控件/控件 2-22.png differ diff --git a/tools/assets_0902/06_控件/控件 2-23.png b/tools/assets_0902/06_控件/控件 2-23.png new file mode 100644 index 0000000..1a6dca2 Binary files /dev/null and b/tools/assets_0902/06_控件/控件 2-23.png differ diff --git a/tools/assets_0902/06_控件/控件 类型选择-10.png b/tools/assets_0902/06_控件/控件 类型选择-10.png new file mode 100644 index 0000000..0938146 Binary files /dev/null and b/tools/assets_0902/06_控件/控件 类型选择-10.png differ diff --git a/tools/assets_0902/06_控件/控件 类型选择-11.png b/tools/assets_0902/06_控件/控件 类型选择-11.png new file mode 100644 index 0000000..adcb748 Binary files /dev/null and b/tools/assets_0902/06_控件/控件 类型选择-11.png differ diff --git a/tools/assets_0902/06_控件/控件 类型选择-12.png b/tools/assets_0902/06_控件/控件 类型选择-12.png new file mode 100644 index 0000000..160e796 Binary files /dev/null and b/tools/assets_0902/06_控件/控件 类型选择-12.png differ diff --git a/tools/assets_0902/06_控件/控件 类型选择-13.png b/tools/assets_0902/06_控件/控件 类型选择-13.png new file mode 100644 index 0000000..40435c8 Binary files /dev/null and b/tools/assets_0902/06_控件/控件 类型选择-13.png differ diff --git a/tools/assets_0902/06_控件/控件-10.png b/tools/assets_0902/06_控件/控件-10.png new file mode 100644 index 0000000..b3c7a55 Binary files /dev/null and b/tools/assets_0902/06_控件/控件-10.png differ diff --git a/tools/assets_0902/06_控件/控件-11.png b/tools/assets_0902/06_控件/控件-11.png new file mode 100644 index 0000000..257314d Binary files /dev/null and b/tools/assets_0902/06_控件/控件-11.png differ diff --git a/tools/assets_0902/06_控件/控件-12.png b/tools/assets_0902/06_控件/控件-12.png new file mode 100644 index 0000000..7b96db6 Binary files /dev/null and b/tools/assets_0902/06_控件/控件-12.png differ diff --git a/tools/assets_0902/06_控件/控件-13.png b/tools/assets_0902/06_控件/控件-13.png new file mode 100644 index 0000000..3b351da Binary files /dev/null and b/tools/assets_0902/06_控件/控件-13.png differ diff --git a/tools/assets_0902/06_控件/控件-14.png b/tools/assets_0902/06_控件/控件-14.png new file mode 100644 index 0000000..cfe4cbc Binary files /dev/null and b/tools/assets_0902/06_控件/控件-14.png differ diff --git a/tools/assets_0902/06_控件/控件-15.png b/tools/assets_0902/06_控件/控件-15.png new file mode 100644 index 0000000..fab3c1c Binary files /dev/null and b/tools/assets_0902/06_控件/控件-15.png differ diff --git a/tools/assets_0902/06_控件/控件-16.png b/tools/assets_0902/06_控件/控件-16.png new file mode 100644 index 0000000..756d578 Binary files /dev/null and b/tools/assets_0902/06_控件/控件-16.png differ diff --git a/tools/assets_0902/06_控件/控件-17.png b/tools/assets_0902/06_控件/控件-17.png new file mode 100644 index 0000000..177a881 Binary files /dev/null and b/tools/assets_0902/06_控件/控件-17.png differ diff --git a/tools/assets_0902/06_控件/控件-18.png b/tools/assets_0902/06_控件/控件-18.png new file mode 100644 index 0000000..b694549 Binary files /dev/null and b/tools/assets_0902/06_控件/控件-18.png differ diff --git a/tools/assets_0902/06_控件/控件-19.png b/tools/assets_0902/06_控件/控件-19.png new file mode 100644 index 0000000..c1825b7 Binary files /dev/null and b/tools/assets_0902/06_控件/控件-19.png differ diff --git a/tools/assets_0902/06_控件/文字/文字-10.png b/tools/assets_0902/06_控件/文字/文字-10.png new file mode 100644 index 0000000..9257ee2 Binary files /dev/null and b/tools/assets_0902/06_控件/文字/文字-10.png differ diff --git a/tools/assets_0902/06_控件/文字/文字-11.png b/tools/assets_0902/06_控件/文字/文字-11.png new file mode 100644 index 0000000..d0d920d Binary files /dev/null and b/tools/assets_0902/06_控件/文字/文字-11.png differ diff --git a/tools/assets_0902/06_控件/文字/文字-12.png b/tools/assets_0902/06_控件/文字/文字-12.png new file mode 100644 index 0000000..4465f50 Binary files /dev/null and b/tools/assets_0902/06_控件/文字/文字-12.png differ diff --git a/tools/assets_0902/06_控件/文字/文字-24.png b/tools/assets_0902/06_控件/文字/文字-24.png new file mode 100644 index 0000000..2286af8 Binary files /dev/null and b/tools/assets_0902/06_控件/文字/文字-24.png differ diff --git a/tools/assets_0902/06_控件/文字/文字-25.png b/tools/assets_0902/06_控件/文字/文字-25.png new file mode 100644 index 0000000..324fc96 Binary files /dev/null and b/tools/assets_0902/06_控件/文字/文字-25.png differ diff --git a/tools/assets_0902/06_控件/文字/文字-26.png b/tools/assets_0902/06_控件/文字/文字-26.png new file mode 100644 index 0000000..1890622 Binary files /dev/null and b/tools/assets_0902/06_控件/文字/文字-26.png differ diff --git a/tools/assets_0902/06_控件/文字/文字-27.png b/tools/assets_0902/06_控件/文字/文字-27.png new file mode 100644 index 0000000..2861d5f Binary files /dev/null and b/tools/assets_0902/06_控件/文字/文字-27.png differ diff --git a/tools/assets_0902/06_控件/系统设置/文字/设置界面文字 - 二级-14.png b/tools/assets_0902/06_控件/系统设置/文字/设置界面文字 - 二级-14.png new file mode 100644 index 0000000..2c49a64 Binary files /dev/null and b/tools/assets_0902/06_控件/系统设置/文字/设置界面文字 - 二级-14.png differ diff --git a/tools/assets_0902/06_控件/系统设置/文字/设置界面文字 - 二级-15.png b/tools/assets_0902/06_控件/系统设置/文字/设置界面文字 - 二级-15.png new file mode 100644 index 0000000..1a5d1c6 Binary files /dev/null and b/tools/assets_0902/06_控件/系统设置/文字/设置界面文字 - 二级-15.png differ diff --git a/tools/assets_0902/06_控件/系统设置/文字/设置界面文字 - 二级-16.png b/tools/assets_0902/06_控件/系统设置/文字/设置界面文字 - 二级-16.png new file mode 100644 index 0000000..a121b0b Binary files /dev/null and b/tools/assets_0902/06_控件/系统设置/文字/设置界面文字 - 二级-16.png differ diff --git a/tools/assets_0902/06_控件/系统设置/文字/设置界面文字 - 二级-17.png b/tools/assets_0902/06_控件/系统设置/文字/设置界面文字 - 二级-17.png new file mode 100644 index 0000000..36ce93b Binary files /dev/null and b/tools/assets_0902/06_控件/系统设置/文字/设置界面文字 - 二级-17.png differ diff --git a/tools/assets_0902/06_控件/系统设置/文字/设置界面文字-14.png b/tools/assets_0902/06_控件/系统设置/文字/设置界面文字-14.png new file mode 100644 index 0000000..ab3bb3a Binary files /dev/null and b/tools/assets_0902/06_控件/系统设置/文字/设置界面文字-14.png differ diff --git a/tools/assets_0902/06_控件/系统设置/文字/设置界面文字-15.png b/tools/assets_0902/06_控件/系统设置/文字/设置界面文字-15.png new file mode 100644 index 0000000..a28710c Binary files /dev/null and b/tools/assets_0902/06_控件/系统设置/文字/设置界面文字-15.png differ diff --git a/tools/assets_0902/06_控件/系统设置/文字/设置界面文字-16.png b/tools/assets_0902/06_控件/系统设置/文字/设置界面文字-16.png new file mode 100644 index 0000000..decaac4 Binary files /dev/null and b/tools/assets_0902/06_控件/系统设置/文字/设置界面文字-16.png differ diff --git a/tools/assets_0902/06_控件/系统设置/文字/设置界面文字-17.png b/tools/assets_0902/06_控件/系统设置/文字/设置界面文字-17.png new file mode 100644 index 0000000..6d8aaab Binary files /dev/null and b/tools/assets_0902/06_控件/系统设置/文字/设置界面文字-17.png differ diff --git a/tools/assets_0902/06_控件/系统设置/系统设置图标-10.png b/tools/assets_0902/06_控件/系统设置/系统设置图标-10.png new file mode 100644 index 0000000..dfa151f Binary files /dev/null and b/tools/assets_0902/06_控件/系统设置/系统设置图标-10.png differ diff --git a/tools/assets_0902/06_控件/系统设置/系统设置图标-11.png b/tools/assets_0902/06_控件/系统设置/系统设置图标-11.png new file mode 100644 index 0000000..f235ee1 Binary files /dev/null and b/tools/assets_0902/06_控件/系统设置/系统设置图标-11.png differ diff --git a/tools/assets_0902/06_控件/系统设置/系统设置图标-12.png b/tools/assets_0902/06_控件/系统设置/系统设置图标-12.png new file mode 100644 index 0000000..56765de Binary files /dev/null and b/tools/assets_0902/06_控件/系统设置/系统设置图标-12.png differ diff --git a/tools/assets_0902/06_控件/系统设置/系统设置图标-13.png b/tools/assets_0902/06_控件/系统设置/系统设置图标-13.png new file mode 100644 index 0000000..905c5f6 Binary files /dev/null and b/tools/assets_0902/06_控件/系统设置/系统设置图标-13.png differ diff --git a/tools/assets_0902/06_控件/调音台控件/文字/调音台文字-13.png b/tools/assets_0902/06_控件/调音台控件/文字/调音台文字-13.png new file mode 100644 index 0000000..b720126 Binary files /dev/null and b/tools/assets_0902/06_控件/调音台控件/文字/调音台文字-13.png differ diff --git a/tools/assets_0902/06_控件/调音台控件/文字/调音台文字-14.png b/tools/assets_0902/06_控件/调音台控件/文字/调音台文字-14.png new file mode 100644 index 0000000..8fca59f Binary files /dev/null and b/tools/assets_0902/06_控件/调音台控件/文字/调音台文字-14.png differ diff --git a/tools/assets_0902/06_控件/调音台控件/文字/调音台文字-15.png b/tools/assets_0902/06_控件/调音台控件/文字/调音台文字-15.png new file mode 100644 index 0000000..8cce821 Binary files /dev/null and b/tools/assets_0902/06_控件/调音台控件/文字/调音台文字-15.png differ diff --git a/tools/assets_0902/06_控件/调音台控件/文字/调音台文字-16.png b/tools/assets_0902/06_控件/调音台控件/文字/调音台文字-16.png new file mode 100644 index 0000000..94c8119 Binary files /dev/null and b/tools/assets_0902/06_控件/调音台控件/文字/调音台文字-16.png differ diff --git a/tools/assets_0902/06_控件/调音台控件/文字/调音台文字-17.png b/tools/assets_0902/06_控件/调音台控件/文字/调音台文字-17.png new file mode 100644 index 0000000..7a0837d Binary files /dev/null and b/tools/assets_0902/06_控件/调音台控件/文字/调音台文字-17.png differ diff --git a/tools/assets_0902/06_控件/调音台控件/调音台控件-1.png b/tools/assets_0902/06_控件/调音台控件/调音台控件-1.png new file mode 100644 index 0000000..5adc12f Binary files /dev/null and b/tools/assets_0902/06_控件/调音台控件/调音台控件-1.png differ diff --git a/tools/assets_0902/06_控件/调音台控件/调音台控件-2.png b/tools/assets_0902/06_控件/调音台控件/调音台控件-2.png new file mode 100644 index 0000000..3bbd043 Binary files /dev/null and b/tools/assets_0902/06_控件/调音台控件/调音台控件-2.png differ diff --git a/tools/assets_0902/06_控件/调音台控件/调音台控件-3.png b/tools/assets_0902/06_控件/调音台控件/调音台控件-3.png new file mode 100644 index 0000000..730b995 Binary files /dev/null and b/tools/assets_0902/06_控件/调音台控件/调音台控件-3.png differ diff --git a/tools/gen_ui0902_assets.py b/tools/gen_ui0902_assets.py new file mode 100644 index 0000000..e52745f --- /dev/null +++ b/tools/gen_ui0902_assets.py @@ -0,0 +1,236 @@ +#!/usr/bin/env python3 +# -*- coding: utf-8 -*- +"""K1 0902 UI assets -> RGB565 C arrays (MCU flash) + packed bin (W25Q128 external flash). + +Outputs: + device/LCD_ILI9341/Drv_ILI9341_Lcd_Image_UI0902.c/.h small icons (internal flash) + project/inc/UI0902_Res_Addr.h external flash address map + tools/out/ui0902_res.bin packed images, base UI0902_RES_BASE + tools/out/preview_*.png page previews +""" +from PIL import Image, ImageDraw, ImageFont +from pathlib import Path + +ROOT = Path(__file__).resolve().parents[1] +SRC = ROOT / "tools" / "assets_0902" +OUT = ROOT / "tools" / "out" +OUT.mkdir(exist_ok=True) +OUT_C = ROOT / "device" / "LCD_ILI9341" / "Drv_ILI9341_Lcd_Image_UI0902.c" +OUT_H = ROOT / "device" / "LCD_ILI9341" / "Drv_ILI9341_Lcd_Image_UI0902.h" +OUT_ADDR = ROOT / "project" / "inc" / "UI0902_Res_Addr.h" +OUT_BIN = OUT / "ui0902_res.bin" + +RES_BASE = 0x00100000 # W25Q128 offset; avoids logo(0x0)/charge(0xCB70)/preset(<~0xA8B60) regions +ALIGN = 0x1000 + +# 222x89 rows do not fit 3x between status bar (26) and bottom bar (285); squash to 84px +ROW_RESIZE = (222, 84) + +MISANS = r"c:\Users\qjyu\Documents\SoundWalker\一诺国际吉他\Doc\UI\MiSans\MiSans 字体\MiSans-Medium.ttf" +PAGE_BG = (0, 8, 19) # #000813 +ROW_BG = (36, 43, 58) # #242B3A +SEL_BLUE = (3, 78, 213) # #034ED5 + + +def rgba_to_rgb565(im): + im = im.convert("RGBA") + px = im.load() + w, h = im.size + out = bytearray(w * h * 2) + i = 0 + for y in range(h): + for x in range(w): + r, g, b, a = px[x, y] + if a < 40 or (r < 12 and g < 12 and b < 12): + out[i] = 0 + out[i + 1] = 0 + else: + r = (r * a) // 255 + g = (g * a) // 255 + b = (b * a) // 255 + c = ((r >> 3) << 11) | ((g >> 2) << 5) | (b >> 3) + out[i] = (c >> 8) & 0xFF + out[i + 1] = c & 0xFF + i += 2 + return bytes(out), w, h + + +def emit_c_array(lines, name, data, w, h): + lines.append(f"const unsigned char {name}[{len(data)}] = {{ /* {w}x{h} RGB565 BE */") + for i in range(0, len(data), 16): + lines.append(",".join(f"0x{b:02X}" for b in data[i:i + 16]) + ",") + lines.append("};") + lines.append("") + + +def make_battery_outline(): + """电池图标-10 -> outline only (interior fill removed; runtime draws level fill).""" + im = Image.open(SRC / "02_顶部图标" / "电池图标-10.png").convert("RGBA") + px = im.load() + for y in range(2, 10): + for x in range(2, 27): + px[x, y] = (0, 0, 0, 0) + return im + + +def make_cancel_button(): + """Generate 取消 106x56 dialog button matching 控件-10 style.""" + im = Image.new("RGBA", (106, 56), (0, 0, 0, 0)) + d = ImageDraw.Draw(im) + d.rounded_rectangle([0, 0, 105, 55], radius=12, fill=ROW_BG + (255,)) + f = ImageFont.truetype(MISANS, 24) + t = "取消" + bb = d.textbbox((0, 0), t, font=f) + d.text(((106 - (bb[2] - bb[0])) // 2 - bb[0], (56 - (bb[3] - bb[1])) // 2 - bb[1]), + t, fill=(255, 255, 255, 255), font=f) + return im + + +# ---------------- internal flash (small, high-frequency icons) ---------------- +INTERNAL = [ + ("gImage_UI0902_Volume_20x15", "02_顶部图标/音量图标-10.png"), + ("gImage_UI0902_Bluetooth_11x17", "02_顶部图标/蓝牙图标-10.png"), + ("gImage_UI0902_BatteryFill_22x9", "02_顶部图标/电池电量-10-11.png"), + ("gImage_UI0902_TabSetting_Sel_36x28", "03_底部图标/底部图标-10.png"), + ("gImage_UI0902_TabSetting_Not_35x28", "03_底部图标/底部图标-11.png"), + ("gImage_UI0902_TabMixer_Sel_35x27", "03_底部图标/底部图标-12.png"), + ("gImage_UI0902_TabMixer_Not_18x28", "03_底部图标/底部图标-13.png"), + ("gImage_UI0902_TabMode_Sel_36x28", "03_底部图标/底部图标-14.png"), + ("gImage_UI0902_TabMode_Not_35x29", "03_底部图标/底部图标-15.png"), + ("gImage_UI0902_TabBack_Sel_35x27", "03_底部图标/底部图标-16.png"), + ("gImage_UI0902_TabBack_Not_18x28", "03_底部图标/底部图标-17.png"), +] + +# ---------------- external flash (big images / text strips) ---------------- +EXTERNAL = [ + ("ROW_UNIVERSAL_NOT", "04_模式图标/完整版/模式界面栏背景-16.png"), + ("ROW_UNIVERSAL_SEL", "04_模式图标/完整版/模式界面栏背景-17.png"), + ("ROW_NORMAL_NOT", "04_模式图标/完整版/模式界面栏背景-18.png"), + ("ROW_NORMAL_SEL", "04_模式图标/完整版/模式界面栏背景-19.png"), + ("ROW_EXPERT_NOT", "04_模式图标/完整版/模式界面栏背景-20.png"), + ("ROW_EXPERT_SEL", "04_模式图标/完整版/模式界面栏背景-21.png"), + ("ICON_UNIVERSAL_SEL", "04_模式图标/万能模式图标-1.png"), + ("ICON_UNIVERSAL_NOT", "04_模式图标/万能模式图标-2.png"), + ("ICON_NORMAL_SEL", "04_模式图标/普通模式图标-3.png"), + ("ICON_NORMAL_NOT", "04_模式图标/普通模式图标-4.png"), + ("ICON_EXPERT_SEL", "04_模式图标/专业模式图标-5.png"), + ("ICON_EXPERT_NOT", "04_模式图标/专业模式图标-6.png"), + ("TXT_MODE_UNIVERSAL_NOT", "04_模式图标/完整版/文字/模式选择文字-10.png"), + ("TXT_MODE_UNIVERSAL_SEL", "04_模式图标/完整版/文字/模式选择文字-11.png"), + ("TXT_MODE_NORMAL_NOT", "04_模式图标/完整版/文字/模式选择文字-12.png"), + ("TXT_MODE_NORMAL_SEL", "04_模式图标/完整版/文字/模式选择文字-13.png"), + ("TXT_MODE_EXPERT_NOT", "04_模式图标/完整版/文字/模式选择文字-14.png"), + ("TXT_MODE_EXPERT_SEL", "04_模式图标/完整版/文字/模式选择文字-15.png"), + ("ICON_SET_BLUETOOTH", "05_设置图标/设置图标-01.png"), + ("ICON_SET_GEAR", "05_设置图标/设置图标-02.png"), + ("ICON_CHEVRON", "05_设置图标/设置图标-03.png"), + ("ROW_SET_BLUETOOTH", "05_设置图标/设置图标 完整-10.png"), + ("ROW_SET_SYSTEM", "05_设置图标/设置图标 完整-11.png"), + ("ICON_SYS_LANG", "06_控件/系统设置/系统设置图标-10.png"), + ("ICON_SYS_RESTORE", "06_控件/系统设置/系统设置图标-11.png"), + ("ICON_SYS_ABOUT", "06_控件/系统设置/系统设置图标-12.png"), + ("ICON_SYS_VERSION", "06_控件/系统设置/系统设置图标-13.png"), + ("TXT_SET_LANG", "06_控件/系统设置/文字/设置界面文字-14.png"), + ("TXT_SET_RESTORE", "06_控件/系统设置/文字/设置界面文字-15.png"), + ("TXT_SET_ABOUT", "06_控件/系统设置/文字/设置界面文字-16.png"), + ("TXT_SET_VERSION", "06_控件/系统设置/文字/设置界面文字-17.png"), + ("TXT_SET2_A", "06_控件/系统设置/文字/设置界面文字 - 二级-14.png"), + ("TXT_SET2_B", "06_控件/系统设置/文字/设置界面文字 - 二级-15.png"), + ("TXT_SET2_C", "06_控件/系统设置/文字/设置界面文字 - 二级-16.png"), + ("TXT_SET2_D", "06_控件/系统设置/文字/设置界面文字 - 二级-17.png"), + ("BTN_TYPE_ACOUSTIC_SEL", "06_控件/控件 类型选择-10.png"), + ("BTN_TYPE_SING_NOT", "06_控件/控件 类型选择-11.png"), + ("BTN_TYPE_FINGER_NOT", "06_控件/控件 类型选择-12.png"), + ("BTN_TYPE_STRUM_NOT", "06_控件/控件 类型选择-13.png"), + ("BTN_MINUS_BLUE", "06_控件/控件-11.png"), + ("BTN_PLUS_BLUE", "06_控件/控件-12.png"), + ("BTN_MINUS_GRAY", "06_控件/控件-13.png"), + ("BTN_PLUS_GRAY", "06_控件/控件-14.png"), + ("SLIDER_WIDGET", "06_控件/控件-15.png"), + ("BTN_LANG_SEL", "06_控件/控件-16.png"), + ("BTN_LANG_CN1", "06_控件/控件-17.png"), + ("BTN_LANG_CN2", "06_控件/控件-18.png"), + ("BTN_LANG_EN", "06_控件/控件-19.png"), + ("BTN_CANCEL_SM", "06_控件/控件 2-20.png"), + ("BTN_CONFIRM_SM", "06_控件/控件 2-21.png"), + ("BTN_CANCEL_SM2", "06_控件/控件 2-22.png"), + ("BTN_CONFIRM_SM2", "06_控件/控件 2-23.png"), + ("BTN_CONFIRM_BIG", "06_控件/控件-10.png"), + ("MIXER_KNOB", "06_控件/调音台控件/调音台控件-1.png"), + ("MIXER_KNOB2", "06_控件/调音台控件/调音台控件-2.png"), + ("MIXER_TRACK", "06_控件/调音台控件/调音台控件-3.png"), + ("TXT_MIXER_MIC", "06_控件/调音台控件/文字/调音台文字-13.png"), + ("TXT_MIXER_GUITAR", "06_控件/调音台控件/文字/调音台文字-14.png"), + ("TXT_MIXER_BAND", "06_控件/调音台控件/文字/调音台文字-15.png"), + ("TXT_MIXER_VOCALFX", "06_控件/调音台控件/文字/调音台文字-16.png"), + ("TXT_MIXER_GUITARFX", "06_控件/调音台控件/文字/调音台文字-17.png"), + ("TXT_EFFECT_AMOUNT", "06_控件/文字/文字-10.png"), + ("TXT_BAND_VOLUME", "06_控件/文字/文字-11.png"), + ("TXT_MIC_VOLUME", "06_控件/文字/文字-12.png"), + ("TXT_RESTORE_V1", "06_控件/文字/文字-24.png"), + ("TXT_RESTORE_V2", "06_控件/文字/文字-25.png"), + ("TXT_RESTORE_H", "06_控件/文字/文字-26.png"), + ("TXT_RESTORE_CONFIRM", "06_控件/文字/文字-27.png"), +] + + +def main(): + # ---- internal flash C arrays ---- + c_lines = ['#include "Drv_ILI9341_Lcd_Image_UI0902.h"', "", + "/* Auto-generated by tools/gen_ui0902_assets.py. Do not hand-edit. */", ""] + h_lines = ["#ifndef __DRV_ILI9341_LCD_IMAGE_UI0902_H", + "#define __DRV_ILI9341_LCD_IMAGE_UI0902_H", "", + '#include "stdint.h"', ""] + total_int = 0 + + data, w, h = rgba_to_rgb565(make_battery_outline()) + emit_c_array(c_lines, "gImage_UI0902_BatteryOutline_29x12", data, w, h) + h_lines.append("extern const unsigned char gImage_UI0902_BatteryOutline_29x12[];") + total_int += len(data) + + for name, rel in INTERNAL: + data, w, h = rgba_to_rgb565(Image.open(SRC / rel)) + emit_c_array(c_lines, name, data, w, h) + h_lines.append(f"extern const unsigned char {name}[{len(data)}];") + total_int += len(data) + h_lines += ["", "#endif", ""] + OUT_H.write_text("\n".join(h_lines), encoding="utf-8") + OUT_C.write_text("\n".join(c_lines), encoding="utf-8") + + # ---- external flash bin ---- + addr_lines = ["#ifndef __UI0902_RES_ADDR_H", "#define __UI0902_RES_ADDR_H", "", + "/* Auto-generated by tools/gen_ui0902_assets.py. W25Q128 resource map. */", + f"#define UI0902_RES_BASE 0x{RES_BASE:08X}UL", ""] + blob = bytearray() + offset = 0 + entries = {} + for name, rel in EXTERNAL: + im = Image.open(SRC / rel) + if name in ("ROW_UNIVERSAL_NOT", "ROW_UNIVERSAL_SEL", "ROW_NORMAL_NOT", "ROW_NORMAL_SEL", "ROW_EXPERT_NOT", "ROW_EXPERT_SEL"): + im = im.resize(ROW_RESIZE, Image.LANCZOS) + data, w, h = rgba_to_rgb565(im) + entries[name] = (offset, w, h, len(data)) + blob += data + pad = (-len(blob)) % ALIGN + blob += b"\x00" * pad + offset += len(data) + pad + # derived cancel button + data, w, h = rgba_to_rgb565(make_cancel_button()) + entries["BTN_CANCEL_BIG"] = (offset, w, h, len(data)) + blob += data + for name, (off, w, h, size) in entries.items(): + addr_lines.append(f"#define UI0902_{name}_ADDR (UI0902_RES_BASE + 0x{off:06X}UL) /* {size} bytes */") + addr_lines.append(f"#define UI0902_{name}_W {w}") + addr_lines.append(f"#define UI0902_{name}_H {h}") + addr_lines.append("") + addr_lines += ["#endif", ""] + OUT_ADDR.write_text("\n".join(addr_lines), encoding="utf-8") + OUT_BIN.write_bytes(bytes(blob)) + + print(f"internal flash payload: {total_int} bytes -> {OUT_C.name}") + print(f"external flash payload: {len(blob)} bytes ({len(entries)} images) -> {OUT_BIN.name}") + print(f"addr header -> {OUT_ADDR}") + + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/tools/gen_ui0902_previews.py b/tools/gen_ui0902_previews.py new file mode 100644 index 0000000..53578a5 --- /dev/null +++ b/tools/gen_ui0902_previews.py @@ -0,0 +1,140 @@ +#!/usr/bin/env python3 +# -*- coding: utf-8 -*- +"""Generate page previews mimicking the firmware layout with 0902 assets.""" +from PIL import Image, ImageDraw, ImageFont +from pathlib import Path + +ROOT = Path(__file__).resolve().parents[1] +SRC = ROOT / "tools" / "assets_0902" +OUT = ROOT / "tools" / "out" +MISANS = r"c:\Users\qjyu\Documents\SoundWalker\一诺国际吉他\Doc\UI\MiSans\MiSans 字体\MiSans-Medium.ttf" +PAGE_BG = (0, 8, 19) +ROW_BG = (36, 43, 58) +DIVIDER = (41, 48, 62) + +def load(rel): + return Image.open(SRC / rel).convert("RGBA") + +def paste_trans(page, im, x, y): + page.paste(im, (x, y), im) + +def draw_status_bar(page, d, bt_on=True, pct=75, vol=3): + d.rectangle([0, 0, 239, 25], fill=PAGE_BG) + paste_trans(page, load("02_顶部图标/音量图标-10.png"), 8, 6) + if bt_on: + paste_trans(page, load("02_顶部图标/蓝牙图标-10.png"), 36, 5) + # volume level bars x=55.., 5 bars + for i in range(5): + h = 4 + i * 2 + c = (255, 255, 255) if i < vol else (90, 96, 104) + d.rectangle([55 + i * 5, 21 - h, 55 + i * 5 + 2, 21], fill=c) + # battery + outline = load("02_顶部图标/电池图标-10.png").copy() + px = outline.load() + for yy in range(2, 10): + for xx in range(2, 27): + px[xx, yy] = (0, 0, 0, 0) + fill = load("02_顶部图标/电池电量-10-11.png") + fw = int(22 * pct / 100) + if fw > 0: + paste_trans(page, fill.crop((0, 0, fw, 9)), 206, 9) + paste_trans(page, outline, 203, 7) + d.line([0, 26, 239, 26], fill=DIVIDER) + +def draw_bottom_bar(page, d, sel=None, back=False): + d.rectangle([0, 275, 239, 319], fill=PAGE_BG) + if back: + first = load("03_底部图标/底部图标-17.png") # back not-sel + else: + first = load("03_底部图标/底部图标-11.png") if sel != 0 else load("03_底部图标/底部图标-10.png") + second = load("03_底部图标/底部图标-12.png") if sel == 1 else load("03_底部图标/底部图标-13.png") + third = load("03_底部图标/底部图标-14.png") if sel == 2 else load("03_底部图标/底部图标-15.png") + for im, cx in ((first, 40), (second, 120), (third, 200)): + paste_trans(page, im, cx - im.width // 2, 288) + +def new_page(): + im = Image.new("RGB", (240, 320), PAGE_BG) + return im, ImageDraw.Draw(im) + +def text_center(d, cx, y, s, size, color=(255, 255, 255)): + f = ImageFont.truetype(MISANS, size) + bb = d.textbbox((0, 0), s, font=f) + d.text((cx - (bb[2] - bb[0]) / 2 - bb[0], y), s, fill=color, font=f) + +# ---------- 1. mode select ---------- +p, d = new_page() +draw_status_bar(p, d) +rows = [("04_模式图标/完整版/模式界面栏背景-17.png", 30), + ("04_模式图标/完整版/模式界面栏背景-18.png", 116), + ("04_模式图标/完整版/模式界面栏背景-20.png", 202)] +for rel, y in rows: + paste_trans(p, load(rel).resize((222, 84), Image.LANCZOS), 9, y) +draw_bottom_bar(p, d, sel=2) +p.save(OUT / "preview_01_mode_select.png") + +# ---------- 2. mixer ---------- +p, d = new_page() +draw_status_bar(p, d) +text_center(d, 120, 6, "调音台", 16) +track = load("06_控件/调音台控件/调音台控件-3.png") +knob = load("06_控件/调音台控件/调音台控件-1.png") +labels = ["06_控件/调音台控件/文字/调音台文字-13.png", # MIC + "06_控件/调音台控件/文字/调音台文字-14.png", # 吉他 + "06_控件/调音台控件/文字/调音台文字-15.png", # 伴奏 + "06_控件/调音台控件/文字/调音台文字-16.png"] # 人声效果 +vals = [7, 7, 7, 7] +for i, cx in enumerate((30, 90, 150, 210)): + paste_trans(p, track, cx - 15, 35) + ky = 35 + int((10 - vals[i]) / 10 * (215 - 24)) + paste_trans(p, knob, cx - 15, ky) + text_center(d, cx, ky + 5, str(vals[i]), 11, color=(20, 25, 35)) + lab = load(labels[i]) + paste_trans(p, lab, cx - lab.width // 2, 258) +draw_bottom_bar(p, d, sel=1) +p.save(OUT / "preview_05_mixer.png") + +# ---------- 3. settings ---------- +p, d = new_page() +draw_status_bar(p, d) +text_center(d, 120, 6, "设置", 16) +rows_cfg = [ + ("05_设置图标/设置图标-01.png", "蓝牙设置", "开"), + ("05_设置图标/设置图标-02.png", "自动关机", "15分钟"), + ("06_控件/系统设置/系统设置图标-11.png", "恢复出厂设置", None), + ("06_控件/系统设置/系统设置图标-13.png", "版本信息", "0.1.11"), +] +chev = load("05_设置图标/设置图标-03.png") +for i, (icon, label, val) in enumerate(rows_cfg): + y = 42 + i * 46 + d.rounded_rectangle([13, y, 226, y + 32], radius=8, fill=ROW_BG) + ic = load(icon) + paste_trans(p, ic, 20, y + (33 - ic.height) // 2) + f = ImageFont.truetype(MISANS, 13) + d.text((62, y + 9), label, fill=(255, 255, 255), font=f) + if val: + fv = ImageFont.truetype(MISANS, 11) + bb = d.textbbox((0, 0), val, font=fv) + d.text((200 - (bb[2] - bb[0]), y + 11), val, fill=(150, 156, 165), font=fv) + paste_trans(p, chev, 212, y + 7) +draw_bottom_bar(p, d, back=True) +p.save(OUT / "preview_06_settings.png") + +# ---------- 4. restore dialog ---------- +p, d = new_page() +draw_status_bar(p, d) +text_center(d, 120, 6, "恢复出厂设置", 16) +text_center(d, 120, 120, "确认恢复出厂设置,恢复后所有设置将", 12) +text_center(d, 120, 142, "清除并重启。", 12) +paste_trans(p, load("06_控件/控件-10.png"), 13, 185) +# derived cancel button +im = Image.new("RGBA", (106, 56), (0, 0, 0, 0)) +dd = ImageDraw.Draw(im) +dd.rounded_rectangle([0, 0, 105, 55], radius=12, fill=ROW_BG + (255,)) +f24 = ImageFont.truetype(MISANS, 24) +bb = dd.textbbox((0, 0), "取消", font=f24) +dd.text(((106 - (bb[2] - bb[0])) // 2 - bb[0], (56 - (bb[3] - bb[1])) // 2 - bb[1]), "取消", fill=(255, 255, 255), font=f24) +paste_trans(p, im, 121, 185) +draw_bottom_bar(p, d, back=True) +p.save(OUT / "preview_07_restore.png") + +print("previews saved") \ No newline at end of file