private void Create() { _caret = new Mock <ITextCaret>(MockBehavior.Strict); _caret.SetupGet(x => x.Position).Returns(new CaretPosition()); _selection = new Mock <ITextSelection>(MockBehavior.Strict); _textView = new Mock <IWpfTextView>(MockBehavior.Strict); _textView.SetupGet(x => x.Caret).Returns(_caret.Object); _textView.SetupGet(x => x.Selection).Returns(_selection.Object); _textView.SetupGet(x => x.IsClosed).Returns(false); _textView.SetupGet(x => x.InLayout).Returns(false); _textView.SetupGet(x => x.HasAggregateFocus).Returns(true); _caretLine = new Mock <IWpfTextViewLine>(MockBehavior.Strict); _caretLine.SetupGet(x => x.IsValid).Returns(true); _caretLine.SetupGet(x => x.VisibilityState).Returns(VisibilityState.FullyVisible); _lines = new Mock <IWpfTextViewLineCollection>(MockBehavior.Strict); _lines.SetupGet(x => x.IsValid).Returns(true); _lines.Setup(x => x.GetTextViewLineContainingBufferPosition(It.IsAny <SnapshotPoint>())).Returns(_caretLine.Object); _textView.SetupGet(x => x.TextViewLines).Returns(_lines.Object); _formatMap = new Mock <IEditorFormatMap>(MockBehavior.Strict); _classificationFormatMap = new Mock <IClassificationFormatMap>(MockBehavior.Strict); _layer = new Mock <IAdornmentLayer>(MockBehavior.Strict); _selectionUtil = new Mock <ISelectionUtil>(MockBehavior.Strict); _selectionUtil.SetupGet(x => x.IsMultiSelectionSupported).Returns(false); _vimBufferData = new Mock <IVimBufferData>(MockBehavior.Strict); _vimBufferData.SetupGet(x => x.TextView).Returns(_textView.Object); _vimBufferData.SetupGet(x => x.SelectionUtil).Returns(_selectionUtil.Object); _blockCaretRaw = new BlockCaret(_vimBufferData.Object, _classificationFormatMap.Object, _formatMap.Object, _layer.Object, new ControlCharUtil(), ProtectedOperations); _blockCaret = _blockCaretRaw; }
private void Create() { _caret = new Mock<ITextCaret>(MockBehavior.Strict); _textview = new Mock<ITextView>(MockBehavior.Strict); _textview.SetupGet(x => x.Caret).Returns(_caret.Object); _formatMap = new Mock<IEditorFormatMap>(MockBehavior.Strict); _layer = new Mock<IAdornmentLayer>(MockBehavior.Strict); _blockCaretRaw = new BlockCaret(_textview.Object, _formatMap.Object, _layer.Object, ProtectedOperations); _blockCaret = _blockCaretRaw; }
private void Create() { _caret = new Mock <ITextCaret>(MockBehavior.Strict); _textview = new Mock <ITextView>(MockBehavior.Strict); _textview.SetupGet(x => x.Caret).Returns(_caret.Object); _formatMap = new Mock <IEditorFormatMap>(MockBehavior.Strict); _layer = new Mock <IAdornmentLayer>(MockBehavior.Strict); _blockCaretRaw = new BlockCaret(_textview.Object, _formatMap.Object, _layer.Object); _blockCaret = _blockCaretRaw; }
/// <summary> Move to the given caret location. </summary> /// <param name="blockCaret"> The block caret. </param> /// <param name="mode"> If the current selection should be replaced or extended to include the new position. </param> public void MoveTo(BlockCaret blockCaret, SelectionMode mode) { _caretStart = blockCaret; if (mode != SelectionMode.Extend) { _caretEnd = blockCaret; } CursorMoved?.Invoke(this, EventArgs.Empty); }
/// <inheritdoc /> public override TextCaret FromBlockCaret(BlockCaret caret) { if (caret.Mover != Instance) { throw new ArgumentException("Caret does not represent the content of a TextCaret", nameof(caret)); } var offset = new TextOffset(caret.InstanceOffset1, caret.InstanceOffset2, caret.InstanceOffset3); return(new TextCaret((TextBlockContent)caret.InstanceDatum, offset)); }
private void Create() { _caret = new Mock <ITextCaret>(MockBehavior.Strict); _textview = new Mock <ITextView>(MockBehavior.Strict); _textview.SetupGet(x => x.Caret).Returns(_caret.Object); _formatMap = new Mock <IEditorFormatMap>(MockBehavior.Strict); _classificationFormatMap = new Mock <IClassificationFormatMap>(MockBehavior.Strict); _layer = new Mock <IAdornmentLayer>(MockBehavior.Strict); _blockCaretRaw = new BlockCaret(_textview.Object, _classificationFormatMap.Object, _formatMap.Object, _layer.Object, new ControlCharUtil(), ProtectedOperations); _blockCaret = _blockCaretRaw; }
/// <summary> /// Calls <see cref="MoveTo"/> with <see cref="SelectionMode.Replace"/> /// </summary> public void Replace(BlockCaret caret) => MoveTo(caret, SelectionMode.Replace);
/// <summary> Constructor. </summary> /// <param name="owner"> The Document that owns the given cursor. </param> /// <param name="blockCaret"> The block cursor. </param> public DocumentSelection(DocumentOwner owner, BlockCaret blockCaret) { Owner = owner; MoveTo(blockCaret, SelectionMode.Replace); }
/// <summary> Constructor. </summary> /// <param name="caret"> The caret that should be saved for later usage. </param> public DocumentCursorHandle(BlockCaret caret) { _serializedCursor = caret.Serialize(); }
/// <summary> Creates a cursor handle from the given content cursor. </summary> public static DocumentCursorHandle ToHandle(this BlockCaret caret) => new DocumentCursorHandle(caret);
public static TextCaret AsTextCursor(this BlockCaret cursor) { return((TextCaret)cursor); }