private void execHandler(object sender, EventArgs e) { ThreadHelper.ThrowIfNotOnUIThread(); var command = sender as OleMenuCommand; if (command == null) { return; } var dte = QtVsToolsPackage.Instance.Dte; switch (command.CommandID.ID) { case (int)CommandId.lUpdateOnSolutionId: Translation.RunlUpdate(QtVsToolsPackage.Instance.Dte.Solution); break; case (int)CommandId.lReleaseOnSolutionId: Translation.RunlRelease(QtVsToolsPackage.Instance.Dte.Solution); break; case (int)CommandId.ChangeSolutionQtVersionId: string newQtVersion = null; using (var formChangeQtVersion = new FormChangeQtVersion()) { formChangeQtVersion.UpdateContent(ChangeFor.Solution); if (formChangeQtVersion.ShowDialog() != DialogResult.OK) { return; } newQtVersion = formChangeQtVersion.GetSelectedQtVersion(); } if (newQtVersion == null) { return; } string currentPlatform = null; try { var config2 = QtVsToolsPackage.Instance.Dte.Solution.SolutionBuild .ActiveConfiguration as SolutionConfiguration2; currentPlatform = config2.PlatformName; } catch { } if (string.IsNullOrEmpty(currentPlatform)) { return; } foreach (var project in HelperFunctions.ProjectsInSolution(dte)) { if (HelperFunctions.IsQtProject(project)) { var OldQtVersion = QtVersionManager.The().GetProjectQtVersion(project, currentPlatform); if (OldQtVersion == null) { OldQtVersion = QtVersionManager.The().GetDefaultVersion(); } var created = false; var qtProject = QtProject.Create(project); if (qtProject.PromptChangeQtVersion(OldQtVersion, newQtVersion)) { qtProject.ChangeQtVersion(OldQtVersion, newQtVersion, ref created); } } } QtVersionManager.The().SaveSolutionQtVersion(dte.Solution, newQtVersion); break; case (int)CommandId.SolutionConvertToQtMsBuild: { QtMsBuildConverter.SolutionToQtMsBuild(); } break; case (int)CommandId.SolutionEnableProjectTracking: { foreach (var project in HelperFunctions.ProjectsInSolution(dte)) { if (HelperFunctions.IsQtProject(project)) { QtProjectTracker.Get(project, project.FullName); } } } break; } }
private void execHandler(object sender, EventArgs e) { ThreadHelper.ThrowIfNotOnUIThread(); var command = sender as OleMenuCommand; if (command == null) { return; } switch ((CommandId)command.CommandID.ID) { case CommandId.ImportPriFileProjectId: ExtLoader.ImportPriFile(HelperFunctions.GetSelectedQtProject(QtVsToolsPackage.Instance.Dte)); break; case CommandId.ExportPriFileProjectId: ExtLoader.ExportPriFile(); break; case CommandId.ExportProFileProjectId: ExtLoader.ExportProFile(); break; case CommandId.lUpdateOnProjectId: Translation.RunlUpdate(HelperFunctions.GetSelectedQtProject(QtVsToolsPackage.Instance.Dte)); break; case CommandId.lReleaseOnProjectId: Translation.RunlRelease(HelperFunctions.GetSelectedQtProject(QtVsToolsPackage.Instance.Dte)); break; case CommandId.ConvertToQtProjectId: case CommandId.ConvertToQmakeProjectId: { var caption = SR.GetString("ConvertTitle"); var text = SR.GetString("ConvertConfirmation"); if (MessageBox.Show(text, caption, MessageBoxButtons.YesNo) == DialogResult.Yes) { HelperFunctions.ToggleProjectKind(HelperFunctions.GetSelectedProject(QtVsToolsPackage .Instance.Dte)); } } break; case CommandId.QtProjectSettingsProjectId: { var pro = HelperFunctions.GetSelectedQtProject(QtVsToolsPackage.Instance.Dte); int projectVersion = QtProject.GetFormatVersion(pro); if (projectVersion >= Resources.qtMinFormatVersion_Settings) { QtVsToolsPackage.Instance.Dte.ExecuteCommand("Project.Properties"); } else if (pro != null) { using (var formProjectQtSettings = new FormProjectQtSettings()) { formProjectQtSettings.SetProject(pro); formProjectQtSettings.StartPosition = FormStartPosition.CenterParent; var ww = new MainWinWrapper(QtVsToolsPackage.Instance.Dte); formProjectQtSettings.ShowDialog(ww); } } else { MessageBox.Show(SR.GetString("NoProjectOpened")); } } break; case CommandId.ChangeProjectQtVersionProjectId: { var pro = HelperFunctions.GetSelectedQtProject(QtVsToolsPackage.Instance.Dte); if (HelperFunctions.IsQMakeProject(pro)) { using (var formChangeQtVersion = new FormChangeQtVersion()) { formChangeQtVersion.UpdateContent(ChangeFor.Project); var ww = new MainWinWrapper(QtVsToolsPackage.Instance.Dte); if (formChangeQtVersion.ShowDialog(ww) == DialogResult.OK) { var qtVersion = formChangeQtVersion.GetSelectedQtVersion(); HelperFunctions.SetDebuggingEnvironment(pro, "PATH=" + QtVersionManager .The().GetInstallPath(qtVersion) + @"\bin;$(PATH)", true); } } } } break; case CommandId.ProjectConvertToQtMsBuild: { QtMsBuildConverter.ProjectToQtMsBuild( HelperFunctions.GetSelectedProject(QtVsToolsPackage.Instance.Dte)); } break; case CommandId.ProjectRefreshIntelliSense: { var selectedProject = HelperFunctions.GetSelectedProject(QtVsToolsPackage.Instance.Dte); var tracker = QtProjectTracker.Get(selectedProject, selectedProject.FullName); QtProjectIntellisense.Refresh(tracker.Project); } break; } }