Merge pull request #2 from xamarin/dev/nosami/remove-system-drawing

Use custom Point struct to remove System.Drawing
This commit is contained in:
Jason Imison 2021-05-24 09:37:49 +01:00 коммит произвёл GitHub
Родитель aebdb7a05f 4fcc03f8f3
Коммит bd987e1d59
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
4 изменённых файлов: 29 добавлений и 3 удалений

Просмотреть файл

@ -410,7 +410,7 @@ namespace XtermSharp.Mac {
void UpdateCursorPosition ()
{
caret.Pos = new System.Drawing.Point (terminal.Buffer.X, terminal.Buffer.Y - terminal.Buffer.YDisp + terminal.Buffer.YBase);
caret.Pos = new Point (terminal.Buffer.X, terminal.Buffer.Y - terminal.Buffer.YDisp + terminal.Buffer.YBase);
}
void UpdateDisplay ()

28
XtermSharp/Point.cs Normal file
Просмотреть файл

@ -0,0 +1,28 @@
namespace XtermSharp
{
public struct Point
{
public static readonly Point Empty;
public Point(int x, int y)
{
X = x;
Y = y;
}
public int X { get; set; }
public int Y { get; set; }
public bool IsEmpty => X == 0 && Y == 0;
public static bool operator ==(Point left, Point right) => left.X == right.X && left.Y == right.Y;
public static bool operator !=(Point left, Point right) => !(left == right);
public override bool Equals(object obj) => obj is Point point && point.X == X && point.Y == Y;
public override int GetHashCode() => X.GetHashCode() * 327 + Y.GetHashCode();
public override string ToString() => "{X=" + X.ToString() + ",Y=" + Y.ToString() + "}";
}
}

Просмотреть файл

@ -1,7 +1,6 @@
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Drawing;
using System.Text;
namespace XtermSharp {

Просмотреть файл

@ -1,6 +1,5 @@
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Text;
namespace XtermSharp {