コード例 #1
0
        public ChangeSignatureOptionsResult GetChangeSignatureOptions(ISymbol symbol, ParameterConfiguration parameters, INotificationService notificationService)
        {
            var dialog = new SignatureChangeDialog();

            try {
                dialog.Init(symbol, parameters);
                bool performChange = dialog.Run() == (int)Gtk.ResponseType.Ok;
                if (!performChange)
                {
                    return(cancelled);
                }

                return(new ChangeSignatureOptionsResult {
                    IsCancelled = false,
                    UpdatedSignature = new Microsoft.CodeAnalysis.ChangeSignature.SignatureChange(parameters, ParameterConfiguration.Create(dialog.ParameterList, parameters.ThisParameter != null))
                });
            } catch (Exception ex) {
                LoggingService.LogError("Error while signature changing.", ex);
                return(cancelled);
            } finally  {
                dialog.Destroy();
            }
        }