private bool VerifyCompileOnDemand() { if (_vbeSettings.CompileOnDemand) { return(_messageBox.ConfirmYesNo(RubberduckUI.Command_Reparse_CompileOnDemandEnabled, RubberduckUI.Command_Reparse_CompileOnDemandEnabled_Caption, false)); } return(true); }
private Declaration PromptIfTargetImplementsInterface() { if (!(TargetDeclaration is ModuleBodyElementDeclaration member) || !member.IsInterfaceImplementation) { return(TargetDeclaration); } var interfaceMember = member.InterfaceMemberImplemented; var message = string.Format(RubberduckUI.Refactoring_TargetIsInterfaceMemberImplementation, TargetDeclaration.IdentifierName, interfaceMember.ComponentName, interfaceMember.IdentifierName); return(_messageBox.ConfirmYesNo(message, RubberduckUI.ReorderParamsDialog_TitleText) ? interfaceMember : null); }
private bool Confirm(string identifier, int referencesFound) { const int threshold = 1000; if (referencesFound == 0) { _messageBox.NotifyWarn( string.Format(RubberduckUI.AllReferences_NoneFoundReference, identifier), RubberduckUI.Rubberduck); return(false); } if (referencesFound > threshold) { return(_messageBox.ConfirmYesNo( string.Format(RubberduckUI.AllReferences_PerformanceWarning, identifier, referencesFound), RubberduckUI.PerformanceWarningCaption)); } return(true); }
public void FindAllReferences(Declaration declaration, ReferenceInfo reference) { if (_state.Status != ParserState.Ready || !(declaration is ProjectDeclaration project)) { return; } var usages = _state.DeclarationFinder.FindAllReferenceUsesInProject(project, reference, out var referenceProject); if (!usages.Any()) { _messageBox.NotifyWarn(string.Format(RubberduckUI.AllReferences_NoneFoundReference, referenceProject.IdentifierName), RubberduckUI.Rubberduck); return; } if (usages.Count > 1000 && !_messageBox.ConfirmYesNo(string.Format(RubberduckUI.AllReferences_PerformanceWarning, referenceProject.IdentifierName, usages.Count), RubberduckUI.PerformanceWarningCaption)) { return; } var viewModel = CreateViewModel(project, referenceProject, usages); _viewModel.AddTab(viewModel); _viewModel.SelectedTab = viewModel; try { var presenter = _presenterService.Presenter(_viewModel); presenter.Show(); } catch (Exception e) { _logger.Error(e); } }
protected override void OnExecute(object parameter) { if (!(parameter is CodeExplorerComponentViewModel node) || node.Declaration is null) { return; } var qualifiedModuleName = node.Declaration.QualifiedModuleName; var component = _projectsProvider.Component(qualifiedModuleName); if (component is null) { return; } // "{qualifiedModuleName.Name} will be permanently deleted. Continue?" (localized) var message = string.Format(Resources.CodeExplorer.CodeExplorerUI.ConfirmBeforeDelete_Prompt, qualifiedModuleName.Name); if (!_messageBox.ConfirmYesNo(message, Resources.CodeExplorer.CodeExplorerUI.ConfirmBeforeDelete_Caption)) { return; } // Have to build the file list *before* removing the component! var files = new List <string>(); for (short i = 1; i <= component.FileCount; i++) { var fileName = component.GetFileName(i); if (fileName != null) // Unsaved components have a null filename for some reason { files.Add(component.GetFileName(i)); } } if (!_removeCommand.RemoveComponent(qualifiedModuleName, false)) { return; // Remove was cancelled or failed } var failedDeletions = new List <string>(); foreach (var file in files) { try { File.Delete(file); } catch (Exception exception) { Logger.Warn(exception, "Failed to delete file"); failedDeletions.Add(file); } } // Let the user know if there are any component files left on disk if (failedDeletions.Any()) { // "The following files could not be deleted: {fileDeletions}" (localized) message = string.Format(Resources.CodeExplorer.CodeExplorerUI.DeleteFailed_Message, string.Join(Environment.NewLine, failedDeletions)); _messageBox.NotifyWarn(message, Resources.CodeExplorer.CodeExplorerUI.DeleteFailed_Caption); } }
private bool UserConfirmsNewTarget(string message) { return(_messageBox.ConfirmYesNo(message, RubberduckUI.ReorderParamsDialog_TitleText)); }
private bool UserConfirmsRenameOfResolvedTarget(string message) { return(_messageBox?.ConfirmYesNo(message, RubberduckUI.RenameDialog_TitleText) ?? false); }
private void ConfirmReorderParameterHandler(object sender, Rubberduck.Refactorings.RefactoringConfirmEventArgs e) { e.Confirm = _messageBox.ConfirmYesNo(e.Message, RubberduckUI.ReorderParamsDialog_TitleText); }
private bool UserConfirmsToProceedWithFolderMerge(string targetFolder, List <string> mergedTargetFolders) { var message = FolderMergeUserConfirmationMessage(targetFolder, mergedTargetFolders); return(_messageBox?.ConfirmYesNo(message, RubberduckUI.MoveFoldersDialog_Caption) ?? false); }