Exemplo n.º 1
0
        // Takes in read input to choose/display row and column.
        public static string QuerySelection(Product2[,] products, string query)
        {
            char selection = 'O';
            int  rows      = 0;
            int  counter   = 0;

            while (selection != 'E')
            {
                QueryDisplay(products, rows, counter, query);

                selection = KeyUtil.GetKey();
                selection = UpperCaseChar(selection);

                switch (selection)
                {
                case 'E':
                    break;

                case 'U':
                    if (counter != 0 && products[rows, counter] != null)
                    {
                        counter--;
                        QueryDisplay(products, rows, counter, query);
                    }
                    ;
                    break;

                case 'D':
                    counter++;
                    try
                    {
                        products[rows, counter].Test();
                        QueryDisplay(products, rows, counter, query);
                    }
                    catch (Exception E)
                    {
                        counter--;
                    }
                    break;

                case 'P':
                    if (rows != 0)
                    {
                        rows--;
                        counter = 0;
                        QueryDisplay(products, rows, counter, query);
                    }
                    ;
                    break;

                case 'N':
                    rows++;
                    try
                    {
                        products[rows, counter].Test();
                        counter = 0;
                        QueryDisplay(products, rows, counter, query);
                    }
                    catch (Exception E)
                    {
                        rows--;
                    }
                    break;

                case 'Q':
                    Environment.Exit(1);
                    break;

                default:
                    break;
                }
            }

            return(products[rows, counter].getItemNo());
        }