Ejemplo n.º 1
0
        //IdentifierExpr
        public override double VisitIdentifierExpr(CalculatorGrammarParser.IdentifierExprContext context)
        {
            var result = context.GetText();

            if (myTable.formulas.Contains(result))
            {
                return(Calculator.Evaluate(myTable.getFormula(result), ref myTable));
            }
            return(0);
        }
Ejemplo n.º 2
0
        private void resizeToolStripMenuItem_Click(object sender, EventArgs e)
        {
            ResizingForm resizingForm = new ResizingForm();
            //resizingForm.ShowDialog();
            int rows    = resizingForm.GetRows();
            int columns = resizingForm.GetColumns();

            if (rows != 0 && columns != 0)
            {
                if (dataGridView1.ColumnCount <= columns && dataGridView1.RowCount <= rows)
                {
                    InitializeDataGridView(rows, columns);
                }
                else
                {
                    var result = MessageBox.Show("Possible lose of data. Continue action?", "Deleting rows, columns ALERT", MessageBoxButtons.YesNo);
                    if (result == DialogResult.Yes)
                    {
                        int starterRowCount    = dataGridView1.ColumnCount - columns;
                        int starterColumnCount = dataGridView1.RowCount - rows;
                        //Deleting rows and columns from memory
                        for (int i = columns; i < dataGridView1.ColumnCount; i++)
                        {
                            for (int j = 0; j < dataGridView1.RowCount; j++)
                            {
                                myTable.DeleteHash(f.ToSys(i) + "." + j);
                            }
                        }
                        for (int i = rows; i < dataGridView1.RowCount; i++)
                        {
                            for (int j = 0; j < dataGridView1.ColumnCount; j++)
                            {
                                myTable.DeleteHash(f.ToSys(j) + "." + i);
                            }
                        }

                        InitializeDataGridView(rows, columns);

                        for (int c = 0; c < columns; c++)
                        {
                            for (int r = 0; r < rows; r++)
                            {
                                currentCell.Colom = c;
                                currentCell.Row   = r;
                                CellCalculation(f.ToSys(c) + "." + r, myTable.getFormula(f.ToSys(c) + "." + r));
                            }
                        }
                    }
                }
            }
        }