📄 ui_menu.lst
字号:
C51 COMPILER V7.50 UI_MENU 07/17/2008 14:38:51 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE UI_MENU
OBJECT MODULE PLACED IN ..\output\ui_menu.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ..\..\common\ui_menu.c LARGE OPTIMIZE(9,SIZE) BROWSE INCDIR(..\..\..\bsp\in
-clude;..\src\include;..\..\include) DEFINE(CONFIG_ASIC) DEBUG OBJECTEXTEND PRINT(.\ui_menu.lst) OBJECT(..\output\ui_menu
-.obj)
line level source
1 #include <string.h>
2 #include "api.h"
*** WARNING C318 IN LINE 2 OF ..\..\common\ui_menu.c: can't open file 'api.h'
3 #include "lcd.h"
*** ERROR C129 IN LINE 102 OF ..\..\INCLUDE\LCD.H: missing ';' before 'lcd_max_str'
4 #include "key.h"
5 #include "res_show.h"
6 #include "res.h"
7 #include "ui_menu.h"
8 #include "display.h"
*** WARNING C318 IN LINE 4 OF ..\..\INCLUDE\DISPLAY.H: can't open file 'types.h'
9 #include "prefer.h"
10 //#include "mp3_utile.h"
11
12 function_menu_t globle_menu;
13
14 code UINT8 menu_pos_menu[7] = { POSITION_MENU1, POSITION_MENU2, POSITION_MENU3,
15 POSITION_MENU4 , POSITION_MENU5 , POSITION_MENU6 , POSITION_MENU7};
16
17 UINT8 menu_need_draw=1;
18 UINT8 menu_value_changed=1;
19 UINT8 menu_active,menu_old_active;
20
21 void show_active_menu(int old_active, int active)
22 {
23 int tmp;
24
25 tmp = old_active%7;
26 tmp = active%7;
27 gfx_bg_rectangle(4,menu_pos_menu[tmp], 120, 16);
28 bResShowPic(MENUARR, menu_ptr_x_def,menu_pos_menu[tmp]+2);
29 fg_color = COLOR_SELECT;
30 ResShowMultiString(globle_menu.title[active], tUserPreference.u8LanguageId, menu_str_x_def, menu_pos_menu
-[tmp]);
31
32 tmp = old_active%7;
33 gfx_bg_rectangle(4,menu_pos_menu[tmp], 120, 16);
34 bResShowPic(MENURDOT, menu_ptr_x_def,menu_pos_menu[tmp]+2);
35 fg_color = COLOR_UNSELECT;
36 ResShowMultiString(globle_menu.title[old_active], tUserPreference.u8LanguageId, menu_str_x_def, me
-nu_pos_menu[tmp]);
37 }
38
39 void screen_menu(UINT8 key)
40 {
41 int i;
42 int cur_group;
43 int n;
44
45
46 switch( key)
47 {
48 case KEY_NEXT:
C51 COMPILER V7.50 UI_MENU 07/17/2008 14:38:51 PAGE 2
49 if(menu_active < globle_menu.total - 1)
50 {
51 menu_active++;
52 if(menu_active/7==cur_group)
53 {
54 menu_old_active=menu_active-1;
55 menu_value_changed=TRUE;
56 }
57 else
58 menu_need_draw = TRUE;
59 }
60 else
61 {
62 menu_active = 0;
63 menu_need_draw = TRUE;
64 }
65 break;
66
67 case KEY_PREV:
68 if(menu_active > 0)
69 {
70 menu_active--;
71 if(menu_active/7==cur_group)
72 {
73 menu_old_active=menu_active+1;
74 menu_value_changed=TRUE;
75 }
76 else
77 menu_need_draw = TRUE;
78 }
79 else
80 {
81 menu_active = globle_menu.total - 1;
82 menu_need_draw = TRUE;
83 }
84
85 break;
86
87 case KEY_MENU:
88 globle_menu.active = menu_active;
89 globle_menu.action(globle_menu.active);
90 return;
91 //case KEY_EOS:
92 // deal_loop();
93 // break;
94 // default:
95 }
96
97 if(menu_need_draw)
98 {
99 bResShowPic(MENUONE,0,0);
100 bResShowPic(MENU_TOP,0,140);
101 menu_old_active=menu_active;
102 cur_group = menu_active / 7;
103 n = cur_group*7;
104 for(i=0; i<7; i++)
105 {
106 if(n+i >= globle_menu.total) break; //处理不足5个的情况
107 if(n+i==menu_active)
108 {
109 bResShowPic(MENUARR, menu_ptr_x_def,menu_pos_menu[i]+2);
110 fg_color = COLOR_SELECT;
C51 COMPILER V7.50 UI_MENU 07/17/2008 14:38:51 PAGE 3
111 ResShowMultiString(globle_menu.title[menu_active],tUserPreference.u8LanguageId,
112 menu_str_x_def, menu_pos_menu[i]);
113 }
114 else
115 {
116 bResShowPic(MENURDOT, menu_ptr_x_def,menu_pos_menu[i]+2);
117 fg_color = COLOR_UNSELECT;
118 ResShowMultiString(globle_menu.title[n+i],tUserPreference.u8LanguageId,
119 menu_str_x_def, menu_pos_menu[i]);
120 }
121 }
122 menu_need_draw = 0;
123 }//need draw
124
125 if(menu_value_changed)
126 {
127 show_active_menu(menu_old_active,menu_active);
128 menu_value_changed=0;
129 }
130 }
131
132
133
134 void ui_menu_init(void)
135 {
136 menu_need_draw=1;
137 menu_value_changed = 0;
138 menu_active = globle_menu.active;
139 bg_color = 0x0000F77F;
140 gfx_set_bg(0x0000F77F);
141 screen_menu(KEY_PLAY);
142 }
143
C51 COMPILATION COMPLETE. 2 WARNING(S), 1 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -