Exemplo n.º 1
0
        HexPosition GetEndPosition(HexPosition origPos, HexPosition startPos, HexPosition pos, PositionKind positionKind, SelectPositionLengthKind selectPosKind)
        {
            switch (selectPosKind)
            {
            case SelectPositionLengthKind.Position:
                switch (positionKind)
                {
                case PositionKind.Absolute:
                case PositionKind.File:
                case PositionKind.RVA:
                    return(ToBufferPosition(origPos, pos.ToUInt64(), positionKind));

                case PositionKind.CurrentPosition:
                    return((origPos + pos).ToUInt64());

                default: throw new InvalidOperationException();
                }

            case SelectPositionLengthKind.Length:
                if (pos == HexPosition.Zero)
                {
                    return(startPos);
                }
                return((startPos + pos - 1).ToUInt64());

            default: throw new InvalidOperationException();
            }
        }
Exemplo n.º 2
0
 public PositionLengthVM(SelectPositionLengthKind kind, string text, string inputGestureText)
 {
     Kind             = kind;
     Text             = text;
     InputGestureText = inputGestureText;
 }