internal bool ExpandTo(GLine line, int position, RangeType type) { line.ExpandBuffer(position + 1); _disabledTemporary = false; _state = SelectionState.Expansion; _forwardDestination._line = line.ID; _backwardDestination._line = line.ID; //Debug.WriteLine(String.Format("ExpandTo Line{0} Position{1}", line.ID, position)); switch (type) { case RangeType.Char: _forwardDestination._position = position; _backwardDestination._position = position; break; case RangeType.Word: _forwardDestination._position = line.FindPrevWordBreak(position) + 1; _backwardDestination._position = line.FindNextWordBreak(position); break; case RangeType.Line: _forwardDestination._position = 0; _backwardDestination._position = line.CharLength; break; } return(true); }
internal bool StartSelection(TerminalPane owner, GLine line, int position, RangeType type, int x, int y) { Debug.Assert(owner != null); Debug.Assert(position >= 0); line.ExpandBuffer(position + 1); _disabledTemporary = false; _owner = owner; _pivotType = type; _forwardPivot._line = line.ID; _backwardPivot._line = line.ID; _forwardDestination._line = line.ID; _forwardDestination._position = position; _backwardDestination._line = line.ID; _backwardDestination._position = position; switch (type) { case RangeType.Char: _forwardPivot._position = position; _backwardPivot._position = position; break; case RangeType.Word: _forwardPivot._position = line.FindPrevWordBreak(position) + 1; _backwardPivot._position = line.FindNextWordBreak(position); break; case RangeType.Line: _forwardPivot._position = 0; _backwardPivot._position = line.CharLength; break; } _state = SelectionState.Pivot; _startX = x; _startY = y; return(true); }
internal bool StartSelection(TerminalPane owner, GLine line, int position, RangeType type, int x, int y) { Debug.Assert(owner!=null); Debug.Assert(position>=0); line.ExpandBuffer(position+1); _disabledTemporary = false; _owner = owner; _pivotType = type; _forwardPivot._line = line.ID; _backwardPivot._line = line.ID; _forwardDestination._line = line.ID; _forwardDestination._position = position; _backwardDestination._line = line.ID; _backwardDestination._position = position; switch(type) { case RangeType.Char: _forwardPivot._position = position; _backwardPivot._position = position; break; case RangeType.Word: _forwardPivot._position = line.FindPrevWordBreak(position)+1; _backwardPivot._position = line.FindNextWordBreak(position); break; case RangeType.Line: _forwardPivot._position = 0; _backwardPivot._position = line.CharLength; break; } _state = SelectionState.Pivot; _startX = x; _startY = y; return true; }
internal bool ExpandTo(GLine line, int position, RangeType type) { line.ExpandBuffer(position+1); _disabledTemporary = false; _state = SelectionState.Expansion; _forwardDestination._line = line.ID; _backwardDestination._line = line.ID; //Debug.WriteLine(String.Format("ExpandTo Line{0} Position{1}", line.ID, position)); switch(type) { case RangeType.Char: _forwardDestination._position = position; _backwardDestination._position = position; break; case RangeType.Word: _forwardDestination._position = line.FindPrevWordBreak(position)+1; _backwardDestination._position = line.FindNextWordBreak(position); break; case RangeType.Line: _forwardDestination._position = 0; _backwardDestination._position = line.CharLength; break; } return true; }