Beispiel #1
0
        private void RemoveLicenseHeaderFromAllFilesInSolutionCallback(object sender, EventArgs e)
        {
            Solution     solution  = _dte.Solution;
            IVsStatusbar statusBar = (IVsStatusbar)GetService(typeof(SVsStatusbar));
            var          removeLicenseHeaderFromAllProjects = new RemoveLicenseHeaderFromAllFilesInSolutionCommand(statusBar, _licenseReplacer);
            bool         resharperSuspended = CommandUtility.ExecuteCommandIfExists("ReSharper_Suspend", _dte);

            try
            {
                removeLicenseHeaderFromAllProjects.Execute(solution);
            }
            catch (Exception exception)
            {
                MessageBoxHelper.Information(
                    string.Format(
                        "The command '{0}' failed with the exception '{1}'. See Visual Studio Output Window for Details.",
                        removeLicenseHeaderFromAllProjects.GetCommandName(),
                        exception.Message));
                OutputWindowHandler.WriteMessage(exception.ToString());
            }

            if (resharperSuspended)
            {
                CommandUtility.ExecuteCommand("ReSharper_Resume", _dte);
            }
        }
        public void HandleButton(object sender, EventArgs e)
        {
            var solutionUpdateViewModel       = new SolutionUpdateViewModel();
            var addHeaderToAllProjectsCommand = new AddLicenseHeaderToAllFilesInSolutionCommand(_licenseReplacer, solutionUpdateViewModel);
            var buttonThreadWorker            = new SolutionLevelButtonThreadWorker(addHeaderToAllProjectsCommand);
            var dialog = new SolutionUpdateDialog(solutionUpdateViewModel);


            dialog.Closing     += DialogOnClosing;
            _resharperSuspended = CommandUtility.ExecuteCommandIfExists("ReSharper_Suspend", _dte2);
            Dispatcher uiDispatcher = Dispatcher.CurrentDispatcher;

            buttonThreadWorker.ThreadDone += (o, args) =>
            {
                uiDispatcher.BeginInvoke(new Action(() => { dialog.Close(); }));
                ResumeResharper();
            };

            _solutionUpdateThread = new System.Threading.Thread(buttonThreadWorker.Run)
            {
                IsBackground = true
            };
            _solutionUpdateThread.Start(_dte2.Solution);

            dialog.ShowModal();
        }
        private void RemoveLicenseHeaderFromAllProjectsCallback(object sender, EventArgs e)
        {
            Solution     solution  = _dte.Solution;
            IVsStatusbar statusBar = (IVsStatusbar)GetService(typeof(SVsStatusbar));
            var          removeLicenseHeaderFromAllProjects = new RemoveLicenseHeaderFromAllProjectsCommand(statusBar, _licenseReplacer);
            bool         resharperSuspended = CommandUtility.ExecuteCommandIfExists("ReSharper_Suspend", _dte);

            removeLicenseHeaderFromAllProjects.Execute(solution);

            if (resharperSuspended)
            {
                CommandUtility.ExecuteCommand("ReSharper_Resume", _dte);
            }
        }