private void Calc(String expr)
      {
        try
        {
          m_history.Add(expr);

          meHistory.SelectionColor = System.Drawing.Color.Blue;
          meHistory.AppendText(expr);
          meHistory.AppendText("\r\n");
          meHistory.SelectionColor = System.Drawing.Color.Black;

          m_parser.SetDecSep(cbDec.Text.ToCharArray()[0]); // default: "."
          m_parser.SetArgSep(cbArg.Text.ToCharArray()[0]); // default: ","
          m_parser.SetExpr(expr);
          m_ans.Value = m_parser.Eval();

          string result = Convert.ToString(m_ans.Value);
          meHistory.AppendText(String.Format("{0} = ", m_parser.GetExpr()));
          meHistory.AppendText(result);
          meHistory.AppendText("\r\n");
        }
        catch (ParserException exc)
        {
          DumpException(exc);
        }
      }