
long parseInput(int userinput)
{
    int retval = 0;

    switch(tolower(userinput))
    {
        case '1': add(verboseOutput, 2); break;

        case '2': printf("\nSpecify filename: ");
                  gets(compilationName);
                  break;

/*      case '7': negate(errorHighlight); break;*/

        case 'c': while(codeMenu() == 0); break;

        case 'o': while(optimizeMenu() == 0); break;

        case 'f': while(defineMenu() == 0); break;

        case 'i': while(includePathMenu() == 0); break;

        case 'l': while(libLinkMenu() == 0); break;

        case 'm': while(compilerMenu() == 0); break;

        case 'w': while(warningMenu() == 0); break;

        case 's': retval = SAVE; break;

        case 'd': retval = SAVEDEFAULT; break;

        case ESC:
        case 'q': exit(0); break;

        default : retval = ILLEGALCHAR; break;
    }

    return(retval);
}



/*
** returns 0 if not done (neither save/save def./quit is chosen)
*/
long mainMenu(void)
{
    int done = 0;

    printf("\f\nVConfig v1.0 by Kasper B. Graversen, for the VBCC v0.3d\n");
    line(55);
/*    printf("-------------------------------------------------------\n");*/

    printf("\n  [1mC.[0m Code\t  [1mM.[0m Compiler\t      [1mO.[0m Optimize");
    printf("\n  -------\t  -----------\t      -----------\n");

    printf("\n  [1mW.[0m Warnings\t  [1mI.[0m Include paths    [1mF.[0m Define");
    printf("\n  -----------\t  ----------------    ---------\n");

    printf("\n  [1mL. [0mLib link ");
    printf("\n  -----------     \n\n\n");


    printf("[1m1. [0mVerbose: %s\t\t", verbosename[verboseOutput]);
    printf("[1m2. [0mOutputname: \"%s\"\n", compilationName);

/*    printf("[1m3. [0mErrorHighlight: %s\n", on_off1[errorHighlight]);*/


    line(55);
    printf("   [1mS. [0mSave       [1mD. [0mSave as default          [1mQ. [0mQuit\n");
    line(55);


    printf("\nPlease select: ");
    do
        done = parseInput(getch());   /* VBCC  done = parseInput(getchar());*/
    while(done == ILLEGALCHAR);

    return(done);
}

