public RHistory(IRInteractiveWorkflowVisual interactiveWorkflow, ITextBuffer textBuffer, IFileSystem fileSystem, IRSettings settings, IEditorOperationsFactoryService editorOperationsFactory, IRtfBuilderService rtfBuilderService, Action dispose) { _interactiveWorkflow = interactiveWorkflow; _historyTextBuffer = textBuffer; _fileSystem = fileSystem; _editorOperationsFactory = editorOperationsFactory; _rtfBuilderService = rtfBuilderService; _dispose = dispose; _textBufferIsEditable = new CountdownDisposable(MakeTextBufferReadOnly); _isMultiline = settings.MultilineHistorySelection; if (_isMultiline) { _entries = new MultilineRHistoryEntries(); } else { _entries = new SinglelineRHistoryEntries(); } _nextEntrySelector = new SingleEntrySelector(this, false); _previousEntrySelector = new SingleEntrySelector(this, true); _rangeUpEntrySelector = new RangeEntrySelector(this, true); _rangeDownEntrySelector = new RangeEntrySelector(this, false); MakeTextBufferReadOnly(); }
private void Select(IEntrySelector entrySelector) { if (!HasEntries) { return; } if (HasSelectedEntries) { entrySelector.EntriesSelected(); } else { if (VisualComponent == null) { return; } entrySelector.TextSelected(); } }