public override void Run(ICommandLineArgument[] args) { HeuristicLab.MainForm.WindowsForms.MainForm mainForm = null; if (Settings.Default.MainFormType == OptimizerMainFormTypes.DockingMainForm) { mainForm = new OptimizerDockingMainForm(typeof(IOptimizerUserInterfaceItemProvider)); } else if (Settings.Default.MainFormType == OptimizerMainFormTypes.MultipleDocumentMainForm) { mainForm = new OptimizerMultipleDocumentMainForm(typeof(IOptimizerUserInterfaceItemProvider)); } else if (Settings.Default.MainFormType == OptimizerMainFormTypes.SingleDocumentMainForm) { mainForm = new OptimizerSingleDocumentMainForm(typeof(IOptimizerUserInterfaceItemProvider)); } if (mainForm != null) { ClientInformation.InitializeAsync(); UserInformation.InitializeAsync(); mainForm.ShowContentInViewHost = true; var filesToOpen = args.OfType <OpenArgument>().Select(x => x.Value); mainForm.Load += (sender, eventArgs) => FileManager.OpenFiles(filesToOpen); Application.Run(mainForm); } else { MessageBox.Show("Error loading setting for the MainForm Type. Please check your configuration file!", "HeuristicLab", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private static void SetSaveOperationProgressInContentViews(IStorableContent content, bool showProgress, string fileName = null) { HeuristicLab.MainForm.WindowsForms.MainForm mainForm = MainFormManager.GetMainForm <HeuristicLab.MainForm.WindowsForms.MainForm>(); #region Mono Compatibility // removed the InvokeRequired check because of Mono mainForm.Invoke((Action) delegate { if (showProgress) { mainForm.AddOperationProgressToContent(content, string.Format("Saving to file \"{0}\"...", Path.GetFileName(fileName ?? content.Filename))); } else { mainForm.RemoveOperationProgressFromContent(content); } }); #endregion }