Пример #1
0
        async void _btnReplace_OnClick(object sender, RoutedEventArgs e)
        {
            if (!DataIsLoaded || !_analysisDone)
            {
                return;
            }

            var question = string.Format("Внимание! Если продолжить, то начнется замена документации в исходном коде решения {0}. Крайне рекомендуется сначала выполнить коммит для всех несохраненных изменений в репозитории, при наличии таковых. В противном случае при возникновении ошибок будет очень сложно разделить нужные и ненужные изменения.\n\nНачать замену документации в коде?\n",
                                         Path.GetFileName(_solutionFile));

            if (MessageBox.Show(this, question, "Продолжить?", MessageBoxButton.YesNo, MessageBoxImage.Warning) != MessageBoxResult.Yes)
            {
                return;
            }

            Log("Начало изменения кода решения {0}", Path.GetFileName(_solutionFile));

            await BlockInputAction(async() => {
                var progress = new Progress <string>(msg => { Dispatcher.MyGuiAsync(() => { _busyIndicator.BusyContent = msg; }); });

                var numUpdatedFiles = await _solution.RewriteDocuments(progress, _oldXmlDocDict, _newXmlDocDict, _oldXmlDocDict.Keys.ToArray(), _resourcesDict);

                _rewriteDone = numUpdatedFiles > 0;
            }, "Замена xml документации...");
        }