//.################################################
//# Copyright © 2006-2010 Evolving Software Ltd   #
//# Author: Vijay Patel                           #
//################################################'

using System;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.Windows.Forms;

using TestApplicationDomainModel;

using Evolving.TrueView;
using Evolving.DomainTypes;
using TestApplicationDomainModel.Objects;

namespace TestApplication
{
    static class Program
    {
        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            My.Application.ApplicationInitialised += new EventHandler(MyApplication_ApplicationInitialised);

            My.Session.ObjectCreated += new ObjectCreatedEventHandler(Session_ObjectCreated);
            My.Session.ObjectDisposed += new ObjectDisposedEventHandler(Session_ObjectDisposed);

            AddExplorableGettingStarted();

            My.Application.Start();
        }


        private static void AddExplorableGettingStarted()
        {
            My.Application.ExplorableObjects.Add(new GettingStarted());
        }

        static void MyApplication_ApplicationInitialised(object sender, EventArgs e)
        {
            // Use this to invoke code after TrueView is initialised
        }

        static void Session_ObjectCreated(object sender, Evolving.TrueView.Domain.ObjectArgs e)
        {
            // Use this to invoke code whenever an Object is created
        }

        static void Session_ObjectDisposed(object sender, Evolving.TrueView.Domain.ObjectArgs e)
        {
            // Use this to invoke code whenever an Object is disposed
        }

    }
}