public override int?GetLinePositionFromXCoordinate(double xCoordinate, bool textOnly)
        {
            if (!IsValid)
            {
                throw new ObjectDisposedException(nameof(HexFormattedLineImpl));
            }
            if (xCoordinate < TextLeft)
            {
                return(null);
            }
            if (xCoordinate >= TextLeft + Width)
            {
                return(null);
            }
            if (xCoordinate >= TextRight)
            {
                return(TextSpan.End);
            }

            Debug.Assert(TextLines.Count == 1);
            double extra  = TextLeft;
            var    column = TextLine.GetCharacterHitFromDistance(xCoordinate - extra).FirstCharacterIndex;

            return(linePartsCollection.ConvertColumnToLinePosition(column, includeHiddenPositions: !textOnly));
        }
Exemple #2
0
 public int ConvertColumnToLinePosition(int column) => linePartsCollection.ConvertColumnToLinePosition(column);