Ejemplo n.º 1
0
        private static void main(string[] args)
        {
            Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException);
            AppDomain.CurrentDomain.UnhandledException += unhandledException;
            Application.ThreadException += threadException;

            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            _kernel.Load <CoreModule>();
            _kernel.Load <DalModule>();
            _kernel.Load <DownloaderModule>();
            _kernel.Load <GuiModule>();

            Dpi.Set(_kernel.Get <UiConfigRepository>().Config.UiScalePercent);

            var installer = _kernel.Get <Installer>();

            installer.MtgjsonFileUpdated += mtgjsonFileUpdated;
            installer.BeginInstall       += beginInstall;
            installer.EndInstall         += endInstall;

            _kernel.Get <PriceDownloader>().PricesDownloaded += pricesDownloaded;

            var loader = _kernel.Get <GuiLoader>();

            loader.AsyncRun();
            TaskEx.Run(loader.AsyncConvertLegacyCardId).Wait();

            var colorSchemeEditorForm = _kernel.Get <ColorSchemeEditor>();

            colorSchemeEditorForm.SaveDirectory = AppDir.ColorSchemes;
            colorSchemeEditorForm.LoadCurrentColorScheme();

            _kernel.Get <TooltipConfiguration>().Setup();
            Application.AddMessageFilter(MessageFilter.Instance);

            var application = _kernel.Get <App>();

            application.MigrateHistoryFiles();
            application.CreateForm();

            Application.Run(application);
            Application.RemoveMessageFilter(MessageFilter.Instance);
            application.CancelAllTasks();
        }