Beispiel #1
0
        private static void RunMain()
        {
            var splashScreen = new SplashScreen();

            splashScreen.Show();

            OrmLiteConfig.DialectProvider = SqliteDialect.Provider;
            OrmLiteConfig.DialectProvider.NamingStrategy = new OrmLiteNamingStrategyBase();

            // Create a factory for database connections
            var dbFactory = new OrmLiteConnectionFactory(
                Environment.GetEnvironmentVariable("APPDATA") + @"\EDTradingTool\EDTradingToolDB.sqlite", SqliteDialect.Provider, false
                );

            // Create the class which is used for accessing entities
            Core.IEntityAccess entityAccess = new Data.EntityAccess(dbFactory);

            // Create a factory for entity managers which help keeping data integrity clean
            var entityManagerFactory = new Data.EntityManagerFactory(entityAccess);

            // Create a controller
            var controller = new Controller(entityManagerFactory, new EntityLinker(entityAccess), entityAccess.HandledTypes);

            // Create a GUI
            var mainForm = new GUI.MainForm(
                new GUI.Reports.CommodityTypeStatsHandler(),
                new GUI.Reports.SpaceStationStatsHandler(controller),
                new GUI.Reports.CommodityGroupStatsHandler(controller)
                );

            mainForm.Initialize(controller);
            controller.Initialize(entityAccess);

            Test(controller);

            splashScreen.Hide();
            Application.Run(mainForm);
        }
Beispiel #2
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="entityManagerFactory">The factory for entity managers.</param>
 /// <param name="entityLinker">The linker for entities.</param>
 public Controller(Data.EntityManagerFactory entityManagerFactory, EntityLinker entityLinker, List <Type> handledTypes)
 {
     _entityManagerFactory = entityManagerFactory;
     _entityLinker         = entityLinker;
     _handledTypes         = handledTypes;
 }