/// <summary> /// Loads main Form (loads INI settings from registry, plays startup sound, hides and disposes splashscreen, /// checks registration, loads files in the command line, shows news window) /// </summary> /// <param name="sender">Sender of object</param> /// <param name="e">Contains event data</param> /// <returns>No return value</returns> /// <exception cref="ex"></exceptions> /// <remarks>Documented by Dev00, 2007-07-26</remarks> private void MainForm_Load(object sender, System.EventArgs e) { //[ML-551] Main window not in foreground //It is important to focus MainForm once - otherwise, the SplashScreen has focus (because it was here first). //SplashScreen closed => Windows focused the last used program Activate(); //refresh show in taskbar state to ensure that the window gets shown if (ShowInTaskbar) { SuspendLayout(); ShowInTaskbar = false; ShowInTaskbar = true; ResumeLayout(); } PlayStartupEndSound(false, false); //moved to the top to avoid DirectX audio freeze LearnLogic.CountDownTimerMinimum = Properties.Settings.Default.TIMER_MinSeconds; LearnLogic.SlideShow = Properties.Settings.Default.Slideshow; LearnLogic.IgnoreOldLearningModuleVersion = Properties.Settings.Default.IgnoreOldDics; LearnLogic.SynonymInfoMessage = Properties.Settings.Default.SynonymPromt; //load stylehandler styleHandler = new MLifter.Components.StyleHandler( Path.Combine(Application.StartupPath, Properties.Settings.Default.AppDataFolderDesigns), Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), Path.Combine(Properties.Settings.Default.AppDataFolder, Properties.Settings.Default.AppDataFolderDesigns)), Properties.Resources.ResourceManager, OnStickMode); //load extensions stuff Extensions.Restore(Setup.InstalledExtensionsFilePath); Extensions.SkinPath = styleHandler.StylesPath; Extensions.ExecuteExtension += new Extensions.ExtensionEventHandler(Extensions_ExecuteExtension); Extensions.InformUser += new Extensions.ExtensionEventHandler(Extensions_InformUser); LoadStyle(); RefreshStyleMenu(); RefreshLanguageMenu(); NoDictionaryLoaded(); LoadWindowSettings(); BringToFront(); TopMost = true; TopMost = false; bool firstUse = false; if (Settings.Default.FirstUse) { Wizard startupWizard = new Wizard(MLifter.Classes.Help.HelpPath); startupWizard.StartPosition = FormStartPosition.CenterParent; startupWizard.Text = Resources.FIRSTSTART_CAPTION; startupWizard.Pages.Add(new Controls.Wizards.Startup.DictionaryPathPage(Setup.DictionaryParentPath, Properties.Resources.DICPATH_DEFAULTNAME, Properties.Resources.DICPATH_DEFAULTNAME_OLD)); startupWizard.ShowDialog(); Controls.Wizards.Startup.DictionaryPathPage dictionaryPathPage = startupWizard.Pages[0] as Controls.Wizards.Startup.DictionaryPathPage; Setup.InitializeProfile(dictionaryPathPage.CopyDemoDictionary, dictionaryPathPage.DictionaryPath); Properties.Settings.Default.DicDir = dictionaryPathPage.DictionaryPath; ConnectionStringHandler.CreateUncConnection(Resources.DEFAULT_CONNECTION_NAME, Settings.Default.DicDir, Setup.UserConfigPath, Resources.DEFAULT_CONNECTION_FILE, true, OnStickMode); Settings.Default.FirstUse = false; Settings.Default.Save(); firstUse = true; } Setup.CheckDicDir(); toolStripMenuItemCheckForBetaUpdates.Checked = Settings.Default.CheckForBetaUpdates; while (!Program.UpdateChecked) Thread.Sleep(10); Program.SuspendIPC = false; //re-enable remote services / signal ready //check for unsent error reports Classes.ErrorReportGenerator.ProcessPendingReports(); if (MainformLoadedEvent != null) { LearningModulesIndex index = new LearningModulesIndex(Setup.GlobalConfigPath, Setup.UserConfigPath, LoginForm.OpenLoginForm, delegate { return; }, Setup.SyncedModulesPath); OnMainformLoaded(); } else if (Settings.Default.ShowStartPage && CommandLineParam == string.Empty) { ShowLearningModulesPage(firstUse); } else { LearningModulesIndex index = new LearningModulesIndex(Setup.GlobalConfigPath, Setup.UserConfigPath, LoginForm.OpenLoginForm, delegate { return; }, Setup.SyncedModulesPath); //check for news MLifter.Controls.News news = new MLifter.Controls.News(); news.Prepare(true); //open most recent LM CheckAndLoadStartUpDic(); } }
/// <summary> /// Sets the stack card back colors. /// </summary> /// <param name="styleHandler">The style handler.</param> /// <remarks>Documented by Dev02, 2008-05-09</remarks> public void SetStackCardBackColors(MLifter.Components.StyleHandler styleHandler) { stackFlow.SetStackCardBackColors(styleHandler); }