34 extern int lcdHandle; |
34 extern int lcdHandle; |
35 extern int slcdHandle; |
35 extern int slcdHandle; |
36 |
36 |
37 |
37 |
38 |
38 |
|
39 int toggleYesNo(int value, char *text) |
|
40 { |
|
41 int key, new = value; |
|
42 char pmpt[81]; |
|
43 |
|
44 prompt(0, NULL); |
|
45 prompt(132, NULL); |
|
46 |
|
47 for (;;) { |
|
48 |
|
49 snprintf(pmpt, Config.lcd_cols + 1, "%s: %s", text, new ? (char *)"Yes":(char *)"No "); |
|
50 prompt(200, pmpt); |
|
51 if (new) { |
|
52 prompt(404, NULL); |
|
53 } else { |
|
54 prompt(402, NULL); |
|
55 } |
|
56 |
|
57 key = keywait(); |
|
58 if ((key == KEY_RETURN) || my_shutdown) |
|
59 return value; |
|
60 if ((key == KEY_UP) && new) |
|
61 new = 0; |
|
62 else if ((key == KEY_DOWN) && (new == 0)) |
|
63 new = 1; |
|
64 if (key == KEY_ENTER) |
|
65 return new; |
|
66 } |
|
67 } |
|
68 |
|
69 |
|
70 |
39 void editUnit(units_list *unit) |
71 void editUnit(units_list *unit) |
40 { |
72 { |
|
73 int index = 1, key; |
|
74 char pmpt[81]; |
|
75 |
41 if (debug) |
76 if (debug) |
42 fprintf(stdout, "Start edit brewsystem %d %s\n", unit->number, unit->uuid); |
77 fprintf(stdout, "Start edit brewsystem %d %s\n", unit->number, unit->uuid); |
|
78 |
|
79 prompt(0, NULL); |
|
80 |
|
81 for (;;) { |
|
82 |
|
83 prompt(0, NULL); |
|
84 prompt(131, NULL); |
|
85 |
|
86 if (index == 1) |
|
87 prompt(402, NULL); |
|
88 else if (index == 21) |
|
89 prompt(404, NULL); |
|
90 else |
|
91 prompt(403, NULL); |
|
92 |
|
93 switch (index) { // 12345678901234567890 |
|
94 case 1: snprintf(pmpt, Config.lcd_cols + 1, "Unit name:"); |
|
95 prompt(200, pmpt); |
|
96 snprintf(pmpt, Config.lcd_cols + 1, "%s", unit->name); |
|
97 prompt(300, pmpt); |
|
98 break; |
|
99 case 2: snprintf(pmpt, Config.lcd_cols + 1, " HLT sensor setup"); |
|
100 prompt(200, pmpt); |
|
101 break; |
|
102 case 3: snprintf(pmpt, Config.lcd_cols + 1, " HLT heater setup"); |
|
103 prompt(200, pmpt); |
|
104 break; |
|
105 case 4: snprintf(pmpt, Config.lcd_cols + 1, " MLT sensor setup"); |
|
106 prompt(200, pmpt); |
|
107 break; |
|
108 case 5: snprintf(pmpt, Config.lcd_cols + 1, " MLT heater setup"); |
|
109 prompt(200, pmpt); |
|
110 break; |
|
111 case 6: snprintf(pmpt, Config.lcd_cols + 1, " MLT pump setup"); |
|
112 prompt(200, pmpt); |
|
113 break; |
|
114 case 7: snprintf(pmpt, Config.lcd_cols + 1, "MLT heat b4 HLT: %s", unit->hlt_heater_mltfirst ? (char *)"Yes":(char *)"No"); |
|
115 prompt(200, pmpt); |
|
116 break; |
|
117 case 8: snprintf(pmpt, Config.lcd_cols + 1, "Pump cycle: %2d mins", unit->pump_cycle); |
|
118 prompt(200, pmpt); |
|
119 break; |
|
120 case 9: snprintf(pmpt, Config.lcd_cols + 1, "Pump rest : %2d mins", unit->pump_rest); |
|
121 prompt(200, pmpt); |
|
122 break; |
|
123 case 10: snprintf(pmpt, Config.lcd_cols + 1, " Pump pre-mash: %s", unit->pump_premash ? (char *)"Yes":(char *)"No"); |
|
124 prompt(200, pmpt); |
|
125 break; |
|
126 case 11: snprintf(pmpt, Config.lcd_cols + 1, " Pump on-mash: %s", unit->pump_onmash ? (char *)"Yes":(char *)"No"); |
|
127 prompt(200, pmpt); |
|
128 break; |
|
129 case 12: snprintf(pmpt, Config.lcd_cols + 1, " Pump mashout: %s", unit->pump_mashout ? (char *)"Yes":(char *)"No"); |
|
130 prompt(200, pmpt); |
|
131 break; |
|
132 case 13: snprintf(pmpt, Config.lcd_cols + 1, " Pump on-boil: %s", unit->pump_onboil ? (char *)"Yes":(char *)"No"); |
|
133 prompt(200, pmpt); |
|
134 break; |
|
135 case 14: snprintf(pmpt, Config.lcd_cols + 1, " Pump stop: %3d\337C", unit->pump_stop); |
|
136 prompt(200, pmpt); |
|
137 break; |
|
138 case 15: snprintf(pmpt, Config.lcd_cols + 1, " Skip Add: %s", unit->skip_add ? (char *)"Yes":(char *)"No"); |
|
139 prompt(200, pmpt); |
|
140 break; |
|
141 case 16: snprintf(pmpt, Config.lcd_cols + 1, " Skip Remove: %s", unit->skip_remove ? (char *)"Yes":(char *)"No"); |
|
142 prompt(200, pmpt); |
|
143 break; |
|
144 case 17: snprintf(pmpt, Config.lcd_cols + 1, " Skip Iodine: %s", unit->skip_iodine ? (char *)"Yes":(char *)"No"); |
|
145 prompt(200, pmpt); |
|
146 break; |
|
147 case 18: snprintf(pmpt, Config.lcd_cols + 1, "Iodine time: %3d min", unit->iodine_time); |
|
148 prompt(200, pmpt); |
|
149 break; |
|
150 case 19: snprintf(pmpt, Config.lcd_cols + 1, " Whirlpool: %s", unit->whirlpool ? (char *)"Yes":(char *)"No"); |
|
151 prompt(200, pmpt); |
|
152 break; |
|
153 case 20: snprintf(pmpt, Config.lcd_cols + 1, " HLT PID setup"); |
|
154 prompt(200, pmpt); |
|
155 break; |
|
156 case 21: snprintf(pmpt, Config.lcd_cols + 1, " MLT PID setup"); |
|
157 prompt(200, pmpt); |
|
158 break; |
|
159 } |
|
160 |
|
161 key = keywait(); |
|
162 if ((key == KEY_RETURN) || my_shutdown) |
|
163 return; |
|
164 |
|
165 if ((key == KEY_UP) && (index > 1)) |
|
166 index--; |
|
167 if ((key == KEY_DOWN) && (index < 21)) |
|
168 index++; |
|
169 |
|
170 if (key == KEY_ENTER) { |
|
171 switch(index) { |
|
172 case 7: unit->hlt_heater_mltfirst = toggleYesNo(unit->hlt_heater_mltfirst , (char *)"MLT heat b4 HLT"); |
|
173 break; |
|
174 } |
|
175 } |
|
176 // name |
|
177 // hlt_sensor picklist |
|
178 // hlt_heater picklist + value range |
|
179 // mlt_sensor picklist |
|
180 // mlt_heater picklist + value range |
|
181 // mlt_pump picklist + value range |
|
182 // hlt_heater_mltfirst 0/1 |
|
183 // pump_cycle 5..15 |
|
184 // pump_rest 1..5 |
|
185 // pump_premash 0/1 |
|
186 // pump_onmash 0/1 |
|
187 // pump_mashout 0/1 |
|
188 // pump_onboil 0/1 |
|
189 // pump_stop 80..110 |
|
190 // skip_add 0/1 |
|
191 // skip_remove 0/1 |
|
192 // skip_iodine 0/1 |
|
193 // iodine_time 0..90 |
|
194 // whirlpool 0/1 |
|
195 // PID_hlt |
|
196 // PID_mlt |
|
197 } |
43 |
198 |
44 if (debug) |
199 if (debug) |
45 fprintf(stdout, "End edit brewsystem %d %s\n", unit->number, unit->uuid); |
200 fprintf(stdout, "End edit brewsystem %d %s\n", unit->number, unit->uuid); |
46 } |
201 } |
47 |
202 |