コード例 #1
0
ファイル: RoslynPackage.cs プロジェクト: taori/roslyn
 private static void ReportSessionWideTelemetry()
 {
     SolutionLogger.ReportTelemetry();
     AsyncCompletionLogger.ReportTelemetry();
     CompletionProvidersLogger.ReportTelemetry();
     ChangeSignatureLogger.ReportTelemetry();
 }
コード例 #2
0
        private void Add_Click(object sender, RoutedEventArgs e)
        {
            var addParameterViewModel = _viewModel.CreateAddParameterDialogViewModel();
            var dialog = new AddParameterDialog(addParameterViewModel);
            var result = dialog.ShowModal();

            ChangeSignatureLogger.LogAddParameterDialogLaunched();

            if (result.HasValue && result.Value)
            {
                ChangeSignatureLogger.LogAddParameterDialogCommitted();

                var addedParameter = new AddedParameter(
                    addParameterViewModel.TypeSymbol,
                    addParameterViewModel.TypeName,
                    addParameterViewModel.ParameterName,
                    GetCallSiteKind(addParameterViewModel),
                    addParameterViewModel.IsCallsiteRegularValue ? addParameterViewModel.CallSiteValue : string.Empty,
                    addParameterViewModel.IsRequired,
                    addParameterViewModel.IsRequired ? string.Empty : addParameterViewModel.DefaultValue,
                    addParameterViewModel.TypeBinds);

                _viewModel.AddParameter(addedParameter);
            }

            SetFocusToSelectedRow(false);
        }
コード例 #3
0
        public ChangeSignatureOptionsResult?GetChangeSignatureOptions(
            Document document,
            int positionForTypeBinding,
            ISymbol symbol,
            ParameterConfiguration parameters)
        {
            this.AssertIsForeground();

            var viewModel = new ChangeSignatureDialogViewModel(
                parameters,
                symbol,
                document,
                positionForTypeBinding,
                _classificationFormatMap,
                _classificationTypeMap);

            ChangeSignatureLogger.LogChangeSignatureDialogLaunched();

            var dialog = new ChangeSignatureDialog(viewModel);
            var result = dialog.ShowModal();

            if (result.HasValue && result.Value)
            {
                ChangeSignatureLogger.LogChangeSignatureDialogCommitted();

                var signatureChange = new SignatureChange(parameters, viewModel.GetParameterConfiguration());
                signatureChange.LogTelemetry();

                return(new ChangeSignatureOptionsResult(signatureChange, previewChanges: viewModel.PreviewChanges));
            }

            return(null);
        }
コード例 #4
0
        private void Add_Click(object sender, RoutedEventArgs e)
        {
            var addParameterViewModel = _viewModel.CreateAddParameterDialogViewModel();
            var dialog = new AddParameterDialog(addParameterViewModel);
            var result = dialog.ShowModal();

            ChangeSignatureLogger.LogAddParameterDialogLaunched();

            if (result.HasValue && result.Value)
            {
                ChangeSignatureLogger.LogAddParameterDialogCommitted();

                var addedParameter = new AddedParameter(
                    addParameterViewModel.TypeSymbol,
                    addParameterViewModel.TypeName,
                    addParameterViewModel.ParameterName,
                    (addParameterViewModel.IsCallsiteOmitted || addParameterViewModel.IsCallsiteTodo) ? "" : addParameterViewModel.CallSiteValue,
                    addParameterViewModel.IsRequired,
                    addParameterViewModel.IsRequired ? "" : addParameterViewModel.DefaultValue,
                    addParameterViewModel.UseNamedArguments,
                    addParameterViewModel.IsCallsiteOmitted,
                    addParameterViewModel.IsCallsiteTodo,
                    addParameterViewModel.TypeBinds);

                _viewModel.AddParameter(addedParameter);
            }

            SetFocusToSelectedRow();
        }
コード例 #5
0
ファイル: RoslynPackage.cs プロジェクト: vermeerlee/roslyn
 private void ReportSessionWideTelemetry()
 {
     PersistedVersionStampLogger.ReportTelemetry();
     LinkedFileDiffMergingLogger.ReportTelemetry();
     SolutionLogger.ReportTelemetry();
     AsyncCompletionLogger.ReportTelemetry();
     CompletionProvidersLogger.ReportTelemetry();
     ChangeSignatureLogger.ReportTelemetry();
     SyntacticLspLogger.ReportTelemetry();
 }