Rev 303 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 303 | Rev 314 | ||
---|---|---|---|
Line 22... | Line 22... | ||
22 | public final static int PARAMTYPE_BYTE=1; |
22 | public final static int PARAMTYPE_BYTE=1; |
Line 23... | Line 23... | ||
23 | 23 | ||
24 | 24 | ||
Line 25... | Line 25... | ||
25 | 25 | ||
26 | public String[] tab_names={"Configuration","Channels","Stick","Altitude","Gyro","Looping","Camera","Other","User"}; |
26 | public String[] tab_names={"Configuration","Channels","Stick","Altitude","Gyro","Looping","Camera","Other","User"}; |
27 | public int[] tab_entrys_count={6,8,3,6,4,6,5,5,4}; |
27 | public int[] tab_entrys_count={6,8,3,6,4,6,6,5,4}; |
28 | 28 | ||
29 | public String[][] tab_entrys={{"Altitude Contol","Switch for setpoint","Heading Hold","Compass","Orientation fixed","GPS"} |
29 | public String[][] tab_entrys={{"Altitude Contol","Switch for setpoint","Heading Hold","Compass","Orientation fixed","GPS"} |
30 | , |
30 | , |
31 | {"Accelerate","Gier","Nick","Roll","POTI1","POTI2","POTI3","POTI4"}, |
31 | {"Accelerate","Gier","Nick","Roll","POTI1","POTI2","POTI3","POTI4"}, |
32 | {"Nick/Roll P-Rate","Nick/Roll D-Rate","Gier P-Rate"}, |
32 | {"Nick/Roll P-Rate","Nick/Roll D-Rate","Gier P-Rate"}, |
Line 33... | Line 33... | ||
33 | {"SetPoint","Min. Accelerate","Altitude P","Barometric D","Z-ACC effect ","Gain"}, |
33 | {"SetPoint","Min. Accelerate","Altitude P","Barometric D","Z-ACC effect ","Gain"}, |
34 | {"Gyro P-Rate","Gyro I-Rate","ACC Gyro Factor","Main I"}, |
34 | {"Gyro P-Rate","Gyro I-Rate","ACC Gyro Factor","Main I"}, |
35 | {"Up","Down","Left","Right","Gas Limit","Response threshold"}, |
35 | {"Up","Down","Left","Right","Gas Limit","Response threshold"}, |
Line 65... | Line 65... | ||
65 | { {15,0} ,{16,0},{17,0} }, |
65 | { {15,0} ,{16,0},{17,0} }, |
66 | { {0,0} ,{9,0},{12,0},{10,0},{14,0},{13,0} }, //! |
66 | { {0,0} ,{9,0},{12,0},{10,0},{14,0},{13,0} }, //! |
67 | { {22,0} ,{23,0},{20,0},{28,0} }, |
67 | { {22,0} ,{23,0},{20,0},{28,0} }, |
68 | { {40,0} ,{40,1},{40,2},{40,3},{38,0},{39,0} }, |
68 | { {40,0} ,{40,1},{40,2},{40,3},{38,0},{39,0} }, |
69 | { {33,0} ,{34,0},{40,2}/*!*/,{35,0},{36,0},{37,0} }, |
69 | { {33,0} ,{34,0},{40,2}/*!*/,{35,0},{36,0},{37,0} }, |
70 | { {18,0} ,{19,0},{21,0},{24,0},{25,0} }, |
70 | { {18,0} ,{19,0},{21,0},{24,0},{26,0},{25,0} }, |
71 | { {29,0} ,{30,0},{31,0},{32,0} } |
71 | { {29,0} ,{30,0},{31,0},{32,0} } |
72 | }; |
72 | }; |
Line 73... | Line 73... | ||
73 | 73 | ||
74 | private int act_tab=0; |
74 | private int act_tab=0; |
Line 111... | Line 111... | ||
111 | 111 | ||
112 | for (int i=0;i<tab_entrys_count[act_tab];i++) |
112 | for (int i=0;i<tab_entrys_count[act_tab];i++) |
113 | { |
113 | { |
114 | lcd_lines[1+2*i]=tab_entrys[act_tab][i]; |
114 | lcd_lines[1+2*i]=tab_entrys[act_tab][i]; |
115 | if (tab_entry_types[act_tab][i]== PARAMTYPE_BOOLEAN) |
115 | if (tab_entry_types[act_tab][i]== PARAMTYPE_BOOLEAN) |
116 | lcd_lines[2+2*i]=(((canvas.mk.params.field[tab_entry_src[act_tab][i][0]]&(1<<tab_entry_src[act_tab][i][1]))==0)?"off":"on" ) ; |
116 | lcd_lines[2+2*i]=(((canvas.mk.params.field_from_act(tab_entry_src[act_tab][i][0])&(1<<tab_entry_src[act_tab][i][1]))==0)?"off":"on" ) ; |
117 | if (tab_entry_types[act_tab][i]== PARAMTYPE_BYTE) |
117 | if (tab_entry_types[act_tab][i]== PARAMTYPE_BYTE) |
Line 118... | Line 118... | ||
118 | lcd_lines[2+2*i]=""+canvas.mk.params.field[tab_entry_src[act_tab][i][0]]; |
118 | lcd_lines[2+2*i]=""+canvas.mk.params.field_from_act(tab_entry_src[act_tab][i][0]); |
Line 119... | Line 119... | ||
119 | 119 | ||
120 | } |
120 | } |
Line 160... | Line 160... | ||
160 | { |
160 | { |
161 | case Canvas.RIGHT: |
161 | case Canvas.RIGHT: |
162 | switch(tab_entry_types[act_tab][act_y/2-1]) |
162 | switch(tab_entry_types[act_tab][act_y/2-1]) |
163 | { |
163 | { |
164 | case PARAMTYPE_BOOLEAN: |
164 | case PARAMTYPE_BOOLEAN: |
- | 165 | ||
165 | canvas.mk.params.field[tab_entry_src[act_tab][act_y/2-1][0]]^=1<<tab_entry_src[act_tab][act_y/2-1][1]; |
166 | canvas.mk.params.field_from_act_xor(tab_entry_src[act_tab][act_y/2-1][0],1<<tab_entry_src[act_tab][act_y/2-1][1]); |
166 | break; |
167 | break; |
167 | case PARAMTYPE_BYTE: |
168 | case PARAMTYPE_BYTE: |
168 | canvas.mk.params.field[tab_entry_src[act_tab][act_y/2-1][0]]++; |
169 | canvas.mk.params.field_from_act_add(tab_entry_src[act_tab][act_y/2-1][0],1); |
169 | break; |
170 | break; |
170 | } |
171 | } |
171 | break; |
172 | break; |
Line 172... | Line 173... | ||
172 | 173 | ||
173 | case Canvas.LEFT: |
174 | case Canvas.LEFT: |
174 | switch(tab_entry_types[act_tab][act_y/2-1]) |
175 | switch(tab_entry_types[act_tab][act_y/2-1]) |
175 | { |
176 | { |
- | 177 | case PARAMTYPE_BOOLEAN: |
|
176 | case PARAMTYPE_BOOLEAN: |
178 | |
- | 179 | canvas.mk.params.field_from_act_xor(tab_entry_src[act_tab][act_y/2-1][0],1<<tab_entry_src[act_tab][act_y/2-1][1]); |
|
177 | canvas.mk.params.field[tab_entry_src[act_tab][act_y/2-1][0]]^=1<<tab_entry_src[act_tab][act_y/2-1][1]; |
180 | |
178 | break; |
181 | break; |
179 | case PARAMTYPE_BYTE: |
182 | case PARAMTYPE_BYTE: |
180 | canvas.mk.params.field[tab_entry_src[act_tab][act_y/2-1][0]]--; |
183 | canvas.mk.params.field_from_act_add(tab_entry_src[act_tab][act_y/2-1][0],-1); |
181 | break; |
184 | break; |
Line 182... | Line 185... | ||
182 | } |
185 | } |
Line 188... | Line 191... | ||
188 | switch (action) |
191 | switch (action) |
189 | { |
192 | { |
Line 190... | Line 193... | ||
190 | 193 | ||
191 | case Canvas.DOWN: |
194 | case Canvas.DOWN: |
- | 195 | if (act_y<(act_lcd_lines-2)) act_y+=2; |
|
192 | if (act_y<(act_lcd_lines-2)) act_y+=2; |
196 | else act_y=0; |
Line 193... | Line 197... | ||
193 | break; |
197 | break; |
194 | 198 | ||
- | 199 | case Canvas.UP: |
|
195 | case Canvas.UP: |
200 | if (act_y!=0) act_y-=2; |
Line 196... | Line 201... | ||
196 | if (act_y!=0) act_y-=2;; |
201 | else act_y=act_lcd_lines-1; |
Line 197... | Line 202... | ||
197 | break; |
202 | break; |