// // Copyright (c) Antmicro // // Full license details are defined in the 'LICENSE' file. // using TermSharp.Misc; using Xwt; using Xwt.Drawing; namespace TermSharp.Rows { public interface IRow { double PrepareForDrawing(ILayoutParameters parameters); void Draw(Context ctx, Rectangle selectedArea, SelectionDirection selectionDirection, SelectionMode selectionMode); void ResetSelection(); void DrawCursor(Context ctx, int offset, bool focused); void FillClipboardData(ClipboardData data); void Erase(int from, int to, Color? background); int GetColumnIndex(double x); double IndexToColumn(int idx); int CurrentMaximalCursorPosition { get; } int SublineCount { get; } int MaximalColumn { get; } double LineHeight { get; } string TextContent { get; } } }