// clsExeption.cs
// Copyright (C) 2008 Karel Jordaan http://zanzi.ops4it.com
// 
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
// 
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
// 
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

using System;
using System.Diagnostics;

namespace LibControlLogic.Error
{
    /// <summary>
    /// clsExeption will write errors to trace.
    /// </summary>
    public class clsExeption : Exception //:clsGlobalErr
    {
        #region variables

        #endregion

        #region Functions

        public clsExeption(Exception ex)
        {
            try
            {
                //			//Enables loging (textwriter trace listener)
                //			GUIControlLogic.Error.clsLog clslog = new GUIControlLogic.Error.clsLog ();

                DateTime dt = new DateTime();
                Trace.WriteLine(dt.Date + "    " + dt.TimeOfDay + "    " + ex.Message + "    " + ex.Source + "    " +
                                ex.StackTrace + "    " + ex.TargetSite);
                Debug.WriteLine(ex.Message);
                Trace.Flush();

                //MessageBox.Show  (ex.Message + "    " + ex.Source + "    " + ex.StackTrace + "    " + ex.TargetSite );

                //cleanup
                //clslog.Dispose();
            }
            catch (Exception exx)
            {
                Debug.WriteLine(exx.Message);
                Debugger.Break();
            }
        }

        #endregion
    }
}