brewco/setup.c

changeset 462
830ae3c3ef98
parent 461
482bab226340
child 463
a1da58215b65
equal deleted inserted replaced
461:482bab226340 462:830ae3c3ef98
843 ocrc = crc32(ocrc, (const Bytef *) recipe, sizeof(a_recipe)); 843 ocrc = crc32(ocrc, (const Bytef *) recipe, sizeof(a_recipe));
844 844
845 for (;;) { 845 for (;;) {
846 846
847 prompt(0, NULL); 847 prompt(0, NULL);
848 prompt(191, NULL); 848 prompt(191, NULL); /* " Edit recipe " */
849 849
850 if (idx == 1) 850 if (idx == 1)
851 prompt(402, NULL); 851 prompt(402, NULL); /* "--- dwn quit ok " */
852 else if (idx == 21) 852 else if (idx == 24)
853 prompt(404, NULL); 853 prompt(404, NULL); /* " up --- quit ok " */
854 else 854 else
855 prompt(403, NULL); 855 prompt(403, NULL); /* " up dwn quit ok " */
856 856
857 switch (idx) { // 12345678901234567890 857 switch (idx) { // 12345678901234567890
858 case 1: snprintf(pmpt, Config.lcd_cols + 1, "Recipe name:"); 858 case 1: snprintf(pmpt, Config.lcd_cols + 1, "Recipe name:");
859 prompt(200, pmpt); 859 prompt(200, pmpt);
860 snprintf(pmpt, Config.lcd_cols + 1, "%s", recipe->name); 860 snprintf(pmpt, Config.lcd_cols + 1, "%s", recipe->name);
865 snprintf(pmpt, Config.lcd_cols + 1, "%s", recipe->code); 865 snprintf(pmpt, Config.lcd_cols + 1, "%s", recipe->code);
866 prompt(300, pmpt); 866 prompt(300, pmpt);
867 break; 867 break;
868 case 3: snprintf(pmpt, Config.lcd_cols + 1, "Boil time: %3d mins", recipe->boiltime); 868 case 3: snprintf(pmpt, Config.lcd_cols + 1, "Boil time: %3d mins", recipe->boiltime);
869 prompt(200, pmpt); 869 prompt(200, pmpt);
870 break;
871 case 4:
872 case 5:
873 case 6:
874 case 7:
875 case 8:
876 case 9:
877 case 10:
878 case 11: snprintf(pmpt, Config.lcd_cols + 1, "Mash: %s", recipe->mash[idx - 4].name);
879 prompt(200, pmpt);
880 if (recipe->mash[idx - 4].skip)
881 snprintf(pmpt, Config.lcd_cols + 1, "Skipped");
882 else
883 snprintf(pmpt, Config.lcd_cols + 1, "Sv %4.1f\001 %3d mins", recipe->mash[idx - 4].setpoint, recipe->mash[idx - 4].duration);
884 prompt(300, pmpt);
885 break;
886 case 12:
887 case 13:
888 case 14:
889 case 15:
890 case 16:
891 case 17:
892 case 18:
893 case 19:
894 case 20:
895 case 21: snprintf(pmpt, Config.lcd_cols + 1, "Hop: %s", recipe->hops[idx - 12].name);
896 prompt(200, pmpt);
897 if (recipe->hops[idx - 12].name) {
898 if (recipe->hops[idx - 12].boiltime == -1)
899 snprintf(pmpt, Config.lcd_cols + 1, "First Wort Hop");
900 else
901 snprintf(pmpt, Config.lcd_cols + 1, "Add at %3d mins", recipe->hops[idx - 12].boiltime);
902 prompt(300, pmpt);
903 }
904 break;
905 case 22:
906 case 23:
907 case 24: snprintf(pmpt, Config.lcd_cols + 1, "Hopstand: %s", recipe->hopstand[idx - 22].name);
908 prompt(200, pmpt);
909 if (recipe->hopstand[idx - 22].skip)
910 snprintf(pmpt, Config.lcd_cols + 1, "Skipped");
911 else if (recipe->hopstand[idx - 22].hold)
912 snprintf(pmpt, Config.lcd_cols + 1, "Hold at %4.1f %3d mins", recipe->hopstand[idx - 22].setpoint, recipe->hopstand[idx - 22].duration);
913 else
914 snprintf(pmpt, Config.lcd_cols + 1, "Hold for %3d mins", recipe->hopstand[idx - 22].duration);
915 prompt(300, pmpt);
870 break; 916 break;
871 } 917 }
872 918
873 key = keywait(); 919 key = keywait();
874 if ((key == KEY_RETURN) || my_shutdown) { 920 if ((key == KEY_RETURN) || my_shutdown) {
880 return; 926 return;
881 } 927 }
882 928
883 if ((key == KEY_UP) && (idx > 1)) 929 if ((key == KEY_UP) && (idx > 1))
884 idx--; 930 idx--;
885 if ((key == KEY_DOWN) && (idx < 6)) 931 if ((key == KEY_DOWN) && (idx < 24))
886 idx++; 932 idx++;
887 933
888 if (key == KEY_ENTER) { 934 if (key == KEY_ENTER) {
889 switch(idx) { 935 switch(idx) {
890 case 1: name = calloc(sizeof(char), 21); 936 case 1: name = calloc(sizeof(char), 21);

mercurial