C# Класс dnSpy.Contracts.Hex.HexBufferLineFormatter

Creates HexBufferLines
Показать файл Открыть проект Примеры использования класса

Открытые методы

Метод Описание
EditValueCell ( dnSpy.Contracts.Hex.HexCell cell, int cellPosition, char c ) : PositionAndData?

Edits a value cell. Returns null if editing isn't supported or if the character isn't a valid input character (eg. it's not a hex digit character), else it returns the position in the buffer and new value.

FilterAndVerify ( HexBufferPoint position ) : HexBufferPoint

Filters the position so it's less than EndPosition if it equals EndPosition. It will throw if IsValidPosition(HexBufferPoint) returns false.

GetBufferPositionFromLineNumber ( HexPosition lineNumber ) : HexBufferPoint

Gets the buffer position of a line

GetCharsPerCell ( HexColumnType column ) : int

Gets the number of characters per cell value. This value doesn't include any cell separators

GetCharsPerCellIncludingSeparator ( HexColumnType column ) : int

Gets the total number of characters per cell. This includes cell separators if any.

GetColumnSpan ( HexColumnType column ) : Microsoft.VisualStudio.Text.Span

Gets the span of a column. This is empty if the column isn't present.

GetFormattedOffset ( HexPosition position ) : string

Returns the offset as a string

GetLineFromLineNumber ( HexPosition lineNumber ) : HexBufferLine

Returns a line

GetLineFromPosition ( HexBufferPoint position ) : HexBufferLine

Creates a line

GetLineNumberFromPosition ( HexBufferPoint position ) : HexPosition

Gets the line number

GetValueBufferSpan ( dnSpy.Contracts.Hex.HexCell cell, int cellPosition ) : HexBufferSpan

Gets a buffer span within a cell

IsValidPosition ( HexBufferPoint position ) : bool

Returns true if position is a valid position that can be passed to methods expecting a (physical) position.

ToLogicalPosition ( HexPosition physicalPosition ) : HexPosition

Converts a physical (stream) position to a logical position

ToPhysicalPosition ( HexPosition logicalPosition ) : HexPosition

Converts a logical position to a physical (stream) position

Защищенные методы

Метод Описание
HexBufferLineFormatter ( ) : System

Constructor

Описание методов

EditValueCell() публичный абстрактный Метод

Edits a value cell. Returns null if editing isn't supported or if the character isn't a valid input character (eg. it's not a hex digit character), else it returns the position in the buffer and new value.
public abstract EditValueCell ( dnSpy.Contracts.Hex.HexCell cell, int cellPosition, char c ) : PositionAndData?
cell dnSpy.Contracts.Hex.HexCell Cell
cellPosition int Position within the cell
c char Character
Результат PositionAndData?

FilterAndVerify() публичный Метод

Filters the position so it's less than EndPosition if it equals EndPosition. It will throw if IsValidPosition(HexBufferPoint) returns false.
public FilterAndVerify ( HexBufferPoint position ) : HexBufferPoint
position HexBufferPoint Position
Результат HexBufferPoint

GetBufferPositionFromLineNumber() публичный абстрактный Метод

Gets the buffer position of a line
public abstract GetBufferPositionFromLineNumber ( HexPosition lineNumber ) : HexBufferPoint
lineNumber HexPosition Line number
Результат HexBufferPoint

GetCharsPerCell() публичный абстрактный Метод

Gets the number of characters per cell value. This value doesn't include any cell separators
public abstract GetCharsPerCell ( HexColumnType column ) : int
column HexColumnType
Результат int

GetCharsPerCellIncludingSeparator() публичный абстрактный Метод

Gets the total number of characters per cell. This includes cell separators if any.
public abstract GetCharsPerCellIncludingSeparator ( HexColumnType column ) : int
column HexColumnType
Результат int

GetColumnSpan() публичный Метод

Gets the span of a column. This is empty if the column isn't present.
public GetColumnSpan ( HexColumnType column ) : Microsoft.VisualStudio.Text.Span
column HexColumnType Column
Результат Microsoft.VisualStudio.Text.Span

GetFormattedOffset() публичный абстрактный Метод

Returns the offset as a string
public abstract GetFormattedOffset ( HexPosition position ) : string
position HexPosition Position
Результат string

GetLineFromLineNumber() публичный абстрактный Метод

Returns a line
public abstract GetLineFromLineNumber ( HexPosition lineNumber ) : HexBufferLine
lineNumber HexPosition Line number
Результат HexBufferLine

GetLineFromPosition() публичный абстрактный Метод

Creates a line
public abstract GetLineFromPosition ( HexBufferPoint position ) : HexBufferLine
position HexBufferPoint Position
Результат HexBufferLine

GetLineNumberFromPosition() публичный абстрактный Метод

Gets the line number
public abstract GetLineNumberFromPosition ( HexBufferPoint position ) : HexPosition
position HexBufferPoint Position
Результат HexPosition

GetValueBufferSpan() публичный абстрактный Метод

Gets a buffer span within a cell
public abstract GetValueBufferSpan ( dnSpy.Contracts.Hex.HexCell cell, int cellPosition ) : HexBufferSpan
cell dnSpy.Contracts.Hex.HexCell Cell
cellPosition int Position within the cell
Результат HexBufferSpan

HexBufferLineFormatter() защищенный Метод

Constructor
protected HexBufferLineFormatter ( ) : System
Результат System

IsValidPosition() публичный Метод

Returns true if position is a valid position that can be passed to methods expecting a (physical) position.
public IsValidPosition ( HexBufferPoint position ) : bool
position HexBufferPoint Position
Результат bool

ToLogicalPosition() публичный абстрактный Метод

Converts a physical (stream) position to a logical position
public abstract ToLogicalPosition ( HexPosition physicalPosition ) : HexPosition
physicalPosition HexPosition Physical (stream) position
Результат HexPosition

ToPhysicalPosition() публичный абстрактный Метод

Converts a logical position to a physical (stream) position
public abstract ToPhysicalPosition ( HexPosition logicalPosition ) : HexPosition
logicalPosition HexPosition Logical position
Результат HexPosition