mirror of
https://github.com/gui-cs/Terminal.Gui.git
synced 2025-12-26 15:57:56 +01:00
Code cleanup
This commit is contained in:
@@ -9,7 +9,8 @@ namespace Terminal.Gui;
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// <para>
|
||||
/// Use the helper API (<see cref="GetInside(Rectangle)"/> to get the rectangle describing the insides of the frame,
|
||||
/// Use the helper API (<see cref="GetInside(Rectangle)"/> to get the rectangle describing the insides of the
|
||||
/// frame,
|
||||
/// with the thickness widths subtracted.
|
||||
/// </para>
|
||||
/// <para>Use the helper API (<see cref="Draw(Rectangle, string)"/> to draw the frame with the specified thickness.</para>
|
||||
@@ -86,7 +87,7 @@ public class Thickness : IEquatable<Thickness>
|
||||
public bool Equals (Thickness other) { return other is { } && Left == other.Left && Right == other.Right && Top == other.Top && Bottom == other.Bottom; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets whether the specified coordinates lie within the thickness (inside the bounding rectangle but outside of
|
||||
/// Gets whether the specified coordinates lie within the thickness (inside the bounding rectangle but outside
|
||||
/// the rectangle described by <see cref="GetInside(Rectangle)"/>.
|
||||
/// </summary>
|
||||
/// <param name="outside">Describes the location and size of the rectangle that contains the thickness.</param>
|
||||
@@ -100,17 +101,15 @@ public class Thickness : IEquatable<Thickness>
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Adds the thickness widths of another <see cref="Thickness"/> to the current <see cref="Thickness"/>, returning a new <see cref="Thickness"/>.
|
||||
/// Adds the thickness widths of another <see cref="Thickness"/> to the current <see cref="Thickness"/>, returning a
|
||||
/// new <see cref="Thickness"/>.
|
||||
/// </summary>
|
||||
/// <param name="other"></param>
|
||||
/// <returns></returns>
|
||||
public Thickness Add (Thickness other)
|
||||
{
|
||||
return new Thickness (Left + other.Left, Top + other.Top, Right + other.Right, Bottom + other.Bottom);
|
||||
}
|
||||
public Thickness Add (Thickness other) { return new (Left + other.Left, Top + other.Top, Right + other.Right, Bottom + other.Bottom); }
|
||||
|
||||
/// <summary>
|
||||
/// Adds the thickness widths of another <see cref="Thickness"/> to another <see cref="Thickness"/>.
|
||||
/// Adds the thickness widths of another <see cref="Thickness"/> to another <see cref="Thickness"/>.
|
||||
/// </summary>
|
||||
/// <param name="a"></param>
|
||||
/// <param name="b"></param>
|
||||
@@ -193,7 +192,7 @@ public class Thickness : IEquatable<Thickness>
|
||||
);
|
||||
}
|
||||
|
||||
if (View.Diagnostics.HasFlag(ViewDiagnosticFlags.Ruler))
|
||||
if (View.Diagnostics.HasFlag (ViewDiagnosticFlags.Ruler))
|
||||
{
|
||||
// PERF: This can almost certainly be simplified down to a single point offset and fewer calls to Draw
|
||||
// Top
|
||||
|
||||
@@ -196,9 +196,7 @@ public partial class View
|
||||
contentRelativeToViewport.Offset (-Viewport.X, -Viewport.Y);
|
||||
|
||||
// Translate to Screen-Relative (our SuperView's Viewport-relative coordinates)
|
||||
Rectangle screen = ViewportToScreen (new (contentRelativeToViewport, Size.Empty));
|
||||
|
||||
return screen.Location;
|
||||
return ViewportToScreen (contentRelativeToViewport);
|
||||
}
|
||||
|
||||
/// <summary>Converts a Screen-relative coordinate to a Content-relative coordinate.</summary>
|
||||
@@ -425,22 +423,35 @@ public partial class View
|
||||
ViewportChanged?.Invoke (this, e);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Converts a <see cref="Viewport"/>-relative location and size to a screen-relative location and size.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Viewport-relative means relative to the top-left corner of the inner rectangle of the <see cref="Padding"/>.
|
||||
/// </remarks>
|
||||
/// <param name="viewport">Viewport-relative location and size.</param>
|
||||
/// <returns>Screen-relative location and size.</returns>
|
||||
public Rectangle ViewportToScreen (in Rectangle viewport)
|
||||
{
|
||||
return viewport with { Location = ViewportToScreen (viewport.Location) };
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Converts a <see cref="Viewport"/>-relative location to a screen-relative location.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Viewport-relative means relative to the top-left corner of the inner rectangle of the <see cref="Padding"/>.
|
||||
/// </remarks>
|
||||
/// <param name="location">Viewport-relative location.</param>
|
||||
/// <param name="viewportLocation">Viewport-relative location.</param>
|
||||
/// <returns>Screen-relative location.</returns>
|
||||
public Rectangle ViewportToScreen (in Rectangle location)
|
||||
public Point ViewportToScreen (in Point viewportLocation)
|
||||
{
|
||||
// Translate bounds to Frame (our SuperView's Viewport-relative coordinates)
|
||||
Rectangle screen = FrameToScreen ();
|
||||
Point viewportOffset = GetViewportOffsetFromFrame ();
|
||||
screen.Offset (viewportOffset.X + location.X, viewportOffset.Y + location.Y);
|
||||
screen.Offset (viewportOffset.X + viewportLocation.X, viewportOffset.Y + viewportLocation.Y);
|
||||
|
||||
return new (screen.Location, location.Size);
|
||||
return screen.Location;
|
||||
}
|
||||
|
||||
/// <summary>Converts a screen-relative coordinate to a Viewport-relative coordinate.</summary>
|
||||
|
||||
@@ -106,7 +106,7 @@ public partial class View
|
||||
|
||||
if (ViewportSettings.HasFlag (ViewportSettings.ClearContentOnly))
|
||||
{
|
||||
Rectangle visibleContent = ViewportToScreen (new (new (-Viewport.X, -Viewport.Y), ContentSize.GetValueOrDefault ()));
|
||||
Rectangle visibleContent = ViewportToScreen (new Rectangle (new (-Viewport.X, -Viewport.Y), ContentSize.GetValueOrDefault ()));
|
||||
toClear = Rectangle.Intersect (toClear, visibleContent);
|
||||
}
|
||||
|
||||
@@ -172,7 +172,7 @@ public partial class View
|
||||
if (ViewportSettings.HasFlag (ViewportSettings.ClipContentOnly))
|
||||
{
|
||||
// Clamp the Clip to the just content area that is within the viewport
|
||||
Rectangle visibleContent = ViewportToScreen (new (new (-Viewport.X, -Viewport.Y), ContentSize.GetValueOrDefault ()));
|
||||
Rectangle visibleContent = ViewportToScreen (new Rectangle (new (-Viewport.X, -Viewport.Y), ContentSize.GetValueOrDefault ()));
|
||||
clip = Rectangle.Intersect (clip, visibleContent);
|
||||
}
|
||||
|
||||
@@ -396,7 +396,7 @@ public partial class View
|
||||
return false;
|
||||
}
|
||||
|
||||
Rectangle screen = ViewportToScreen (new (col, row, 0, 0));
|
||||
var screen = ViewportToScreen (new Point (col, row));
|
||||
Driver?.Move (screen.X, screen.Y);
|
||||
|
||||
return true;
|
||||
|
||||
@@ -875,10 +875,7 @@ public partial class View
|
||||
if (IsInitialized && CanFocus && HasFocus && ContentSize.HasValue)
|
||||
{
|
||||
// By default, position the cursor at the hotkey (if any) or 0, 0.
|
||||
Point location = Viewport.Location;
|
||||
location.X = TextFormatter.HotKeyPos == -1 ? 0 : TextFormatter.CursorPosition;
|
||||
location.Y = 0;
|
||||
Move (location.X, location.Y);
|
||||
Move (TextFormatter.HotKeyPos == -1 ? 0 : TextFormatter.CursorPosition, 0);
|
||||
}
|
||||
|
||||
// Returning null will hide the cursor.
|
||||
|
||||
@@ -791,7 +791,7 @@ internal sealed class Menu : View
|
||||
|
||||
if (item is null && BorderStyle != LineStyle.None)
|
||||
{
|
||||
var s = ViewportToScreen (new (-1, i, 0, 0));
|
||||
var s = ViewportToScreen (new Point (-1, i));
|
||||
Driver.Move (s.X, s.Y);
|
||||
Driver.AddRune (Glyphs.LeftTee);
|
||||
}
|
||||
@@ -839,7 +839,7 @@ internal sealed class Menu : View
|
||||
{
|
||||
if (BorderStyle != LineStyle.None && SuperView?.Frame.Right - Frame.X > Frame.Width)
|
||||
{
|
||||
var s = ViewportToScreen (new (Frame.Width - 2, i, 0, 0));
|
||||
var s = ViewportToScreen (new Point (Frame.Width - 2, i));
|
||||
Driver.Move (s.X, s.Y);
|
||||
Driver.AddRune (Glyphs.RightTee);
|
||||
}
|
||||
@@ -876,7 +876,7 @@ internal sealed class Menu : View
|
||||
textToDraw = item.Title;
|
||||
}
|
||||
|
||||
Rectangle screen = ViewportToScreen (new (new (0 , i), Size.Empty));
|
||||
var screen = ViewportToScreen (new Point(0 , i));
|
||||
if (screen.X < Driver.Cols)
|
||||
{
|
||||
Driver.Move (screen.X + 1, screen.Y);
|
||||
@@ -895,7 +895,7 @@ internal sealed class Menu : View
|
||||
|
||||
// The -3 is left/right border + one space (not sure what for)
|
||||
tf.Draw (
|
||||
ViewportToScreen (new (1, i, Frame.Width - 3, 1)),
|
||||
ViewportToScreen (new Rectangle(1, i, Frame.Width - 3, 1)),
|
||||
i == _currentChild ? GetFocusColor () : GetNormalColor (),
|
||||
i == _currentChild ? ColorScheme.HotFocus : ColorScheme.HotNormal,
|
||||
SuperView?.ViewportToScreen (SuperView.Viewport) ?? Rectangle.Empty
|
||||
@@ -915,7 +915,7 @@ internal sealed class Menu : View
|
||||
? item.Help.GetColumns ()
|
||||
: item.Help.GetColumns () + item.ShortcutTag.GetColumns () + 2;
|
||||
int col = Frame.Width - l - 3;
|
||||
screen = ViewportToScreen (new (new (col, i), Size.Empty));
|
||||
screen = ViewportToScreen (new Point (col, i));
|
||||
|
||||
if (screen.X < Driver.Cols)
|
||||
{
|
||||
|
||||
@@ -1336,7 +1336,7 @@ public class MenuBar : View
|
||||
|
||||
if (mi.IsTopLevel)
|
||||
{
|
||||
Rectangle screen = ViewportToScreen (new (new (0, i), Size.Empty));
|
||||
var screen = ViewportToScreen (new Point (0 , i));
|
||||
var menu = new Menu { Host = this, X = screen.X, Y = screen.Y, BarItems = mi };
|
||||
menu.Run (mi.Action);
|
||||
menu.Dispose ();
|
||||
@@ -1699,7 +1699,7 @@ public class MenuBar : View
|
||||
{
|
||||
if (Menus [i].IsTopLevel)
|
||||
{
|
||||
Rectangle screen = ViewportToScreen (new (new (0, i), Size.Empty));
|
||||
var screen = ViewportToScreen (new Point(0 , i));
|
||||
var menu = new Menu { Host = this, X = screen.X, Y = screen.Y, BarItems = Menus [i] };
|
||||
menu.Run (Menus [i].Action);
|
||||
menu.Dispose ();
|
||||
|
||||
@@ -362,9 +362,9 @@ public class Notepad : Scenario
|
||||
);
|
||||
}
|
||||
|
||||
Rectangle screen = ((View)sender).ViewportToScreen (new (e.MouseEvent.Position, Size.Empty));
|
||||
var screen = ((View)sender).ViewportToScreen (e.MouseEvent.Position);
|
||||
|
||||
var contextMenu = new ContextMenu { Position = screen.Location, MenuItems = items };
|
||||
var contextMenu = new ContextMenu { Position = screen, MenuItems = items };
|
||||
|
||||
contextMenu.Show ();
|
||||
e.MouseEvent.Handled = true;
|
||||
|
||||
@@ -251,9 +251,9 @@ public class AdornmentToScreenTests (ITestOutputHelper output)
|
||||
view.Frame = frame;
|
||||
|
||||
// Act
|
||||
var marginScreen = view.Margin.ViewportToScreen (new (testX, 0, 0, 0));
|
||||
var borderScreen = view.Border.ViewportToScreen (new (testX, 0, 0, 0));
|
||||
var paddingScreen = view.Padding.ViewportToScreen (new (testX, 0, 0, 0));
|
||||
var marginScreen = view.Margin.ViewportToScreen (new Point (testX, 0));
|
||||
var borderScreen = view.Border.ViewportToScreen (new Point (testX, 0));
|
||||
var paddingScreen = view.Padding.ViewportToScreen (new Point (testX, 0));
|
||||
|
||||
// Assert
|
||||
Assert.Equal (expectedX, marginScreen.X);
|
||||
@@ -292,9 +292,9 @@ public class AdornmentToScreenTests (ITestOutputHelper output)
|
||||
Assert.Equal(4, view.Viewport.Width);
|
||||
|
||||
// Act
|
||||
var marginScreen = view.Margin.ViewportToScreen (new (testX, 0, 0, 0));
|
||||
var borderScreen = view.Border.ViewportToScreen (new (testX, 0, 0, 0));
|
||||
var paddingScreen = view.Padding.ViewportToScreen (new (testX, 0, 0, 0));
|
||||
var marginScreen = view.Margin.ViewportToScreen (new Point (testX, 0));
|
||||
var borderScreen = view.Border.ViewportToScreen (new Point (testX, 0));
|
||||
var paddingScreen = view.Padding.ViewportToScreen (new Point (testX, 0));
|
||||
|
||||
// Assert
|
||||
Assert.Equal (expectedX, marginScreen.X);
|
||||
@@ -338,9 +338,9 @@ public class AdornmentToScreenTests (ITestOutputHelper output)
|
||||
superView.LayoutSubviews ();
|
||||
|
||||
// Act
|
||||
var marginScreen = view.Margin.ViewportToScreen (new (testX, 0, 0, 0));
|
||||
var borderScreen = view.Border.ViewportToScreen (new (testX, 0, 0, 0));
|
||||
var paddingScreen = view.Padding.ViewportToScreen (new (testX, 0, 0, 0));
|
||||
var marginScreen = view.Margin.ViewportToScreen (new Point (testX, 0));
|
||||
var borderScreen = view.Border.ViewportToScreen (new Point (testX, 0));
|
||||
var paddingScreen = view.Padding.ViewportToScreen (new Point (testX, 0));
|
||||
|
||||
// Assert
|
||||
Assert.Equal (expectedX, marginScreen.X);
|
||||
@@ -385,9 +385,9 @@ public class AdornmentToScreenTests (ITestOutputHelper output)
|
||||
superView.LayoutSubviews ();
|
||||
|
||||
// Act
|
||||
var marginScreen = view.Margin.ViewportToScreen (new (testX, 0, 0, 0));
|
||||
var borderScreen = view.Border.ViewportToScreen (new (testX, 0, 0, 0));
|
||||
var paddingScreen = view.Padding.ViewportToScreen (new (testX, 0, 0, 0));
|
||||
var marginScreen = view.Margin.ViewportToScreen (new Point (testX, 0));
|
||||
var borderScreen = view.Border.ViewportToScreen (new Point (testX, 0));
|
||||
var paddingScreen = view.Padding.ViewportToScreen (new Point (testX, 0));
|
||||
|
||||
// Assert
|
||||
Assert.Equal (expectedX, marginScreen.X);
|
||||
@@ -441,9 +441,9 @@ public class AdornmentToScreenTests (ITestOutputHelper output)
|
||||
superView.LayoutSubviews ();
|
||||
|
||||
// Act
|
||||
var marginScreen = view.Margin.ViewportToScreen (new (testX, 0, 0, 0));
|
||||
var borderScreen = view.Border.ViewportToScreen (new (testX, 0, 0, 0));
|
||||
var paddingScreen = view.Padding.ViewportToScreen (new (testX, 0, 0, 0));
|
||||
var marginScreen = view.Margin.ViewportToScreen (new Point (testX, 0));
|
||||
var borderScreen = view.Border.ViewportToScreen (new Point (testX, 0));
|
||||
var paddingScreen = view.Padding.ViewportToScreen (new Point (testX, 0));
|
||||
|
||||
// Assert
|
||||
Assert.Equal (expectedX, marginScreen.X);
|
||||
@@ -502,9 +502,9 @@ public class AdornmentToScreenTests (ITestOutputHelper output)
|
||||
superView.LayoutSubviews ();
|
||||
|
||||
// Act
|
||||
var marginScreen = view.Margin.ViewportToScreen (new (testX, 0, 0, 0));
|
||||
var borderScreen = view.Border.ViewportToScreen (new (testX, 0, 0, 0));
|
||||
var paddingScreen = view.Padding.ViewportToScreen (new (testX, 0, 0, 0));
|
||||
var marginScreen = view.Margin.ViewportToScreen (new Point (testX, 0));
|
||||
var borderScreen = view.Border.ViewportToScreen (new Point (testX, 0));
|
||||
var paddingScreen = view.Padding.ViewportToScreen (new Point (testX, 0));
|
||||
|
||||
// Assert
|
||||
Assert.Equal (expectedX, marginScreen.X);
|
||||
|
||||
@@ -655,7 +655,7 @@ public class ToScreenTests (ITestOutputHelper output)
|
||||
view.Frame = frame;
|
||||
|
||||
// Act
|
||||
var screen = view.ViewportToScreen (new (viewportX, 0, 0, 0));
|
||||
var screen = view.ViewportToScreen (new Point (viewportX, 0));
|
||||
|
||||
// Assert
|
||||
Assert.Equal (expectedX, screen.X);
|
||||
@@ -687,7 +687,7 @@ public class ToScreenTests (ITestOutputHelper output)
|
||||
view.Frame = frame;
|
||||
|
||||
// Act
|
||||
var screen = view.ViewportToScreen (new (viewportX, 0, 0, 0));
|
||||
var screen = view.ViewportToScreen (new Point (viewportX, 0));
|
||||
|
||||
// Assert
|
||||
Assert.Equal (expectedX, screen.X);
|
||||
@@ -729,7 +729,7 @@ public class ToScreenTests (ITestOutputHelper output)
|
||||
superView.LayoutSubviews ();
|
||||
|
||||
// Act
|
||||
var screen = view.ViewportToScreen (new (viewportX, 0, 0, 0));
|
||||
var screen = view.ViewportToScreen (new Point (viewportX, 0));
|
||||
|
||||
// Assert
|
||||
Assert.Equal (expectedX, screen.X);
|
||||
@@ -772,7 +772,7 @@ public class ToScreenTests (ITestOutputHelper output)
|
||||
superView.LayoutSubviews ();
|
||||
|
||||
// Act
|
||||
var screen = view.ViewportToScreen (new (viewportX, 0, 0, 0));
|
||||
var screen = view.ViewportToScreen (new Point (viewportX, 0));
|
||||
|
||||
// Assert
|
||||
Assert.Equal (expectedX, screen.X);
|
||||
@@ -824,7 +824,7 @@ public class ToScreenTests (ITestOutputHelper output)
|
||||
superView.LayoutSubviews ();
|
||||
|
||||
// Act
|
||||
var screen = view.ViewportToScreen (new (viewportX, 0, 0, 0));
|
||||
var screen = view.ViewportToScreen (new Point (viewportX, 0));
|
||||
|
||||
// Assert
|
||||
Assert.Equal (expectedX, screen.X);
|
||||
@@ -878,7 +878,7 @@ public class ToScreenTests (ITestOutputHelper output)
|
||||
superView.LayoutSubviews ();
|
||||
|
||||
// Act
|
||||
var screen = view.ViewportToScreen (new (viewportX, 0, 0, 0));
|
||||
var screen = view.ViewportToScreen (new Point (viewportX, 0));
|
||||
|
||||
// Assert
|
||||
Assert.Equal (expectedX, screen.X);
|
||||
@@ -935,7 +935,7 @@ public class ToScreenTests (ITestOutputHelper output)
|
||||
superView.LayoutSubviews ();
|
||||
|
||||
// Act
|
||||
var screen = view.ViewportToScreen (new (testX, 0, 0, 0));
|
||||
var screen = view.ViewportToScreen (new Point (testX, 0));
|
||||
|
||||
// Assert
|
||||
Assert.Equal (expectedX, screen.X);
|
||||
|
||||
@@ -852,19 +852,19 @@ public class NavigationTests
|
||||
|
||||
// top
|
||||
Assert.Equal (Point.Empty, top.ScreenToFrame (new (0, 0)));
|
||||
Rectangle screen = top.Margin.ViewportToScreen (new (0, 0, 0, 0));
|
||||
var screen = top.Margin.ViewportToScreen (new Point (0, 0));
|
||||
Assert.Equal (0, screen.X);
|
||||
Assert.Equal (0, screen.Y);
|
||||
screen = top.Border.ViewportToScreen (new (0, 0, 0, 0));
|
||||
screen = top.Border.ViewportToScreen (new Point (0, 0));
|
||||
Assert.Equal (0, screen.X);
|
||||
Assert.Equal (0, screen.Y);
|
||||
screen = top.Padding.ViewportToScreen (new (0, 0, 0, 0));
|
||||
screen = top.Padding.ViewportToScreen (new Point (0, 0));
|
||||
Assert.Equal (1, screen.X);
|
||||
Assert.Equal (1, screen.Y);
|
||||
screen = top.ViewportToScreen (new (0, 0, 0, 0));
|
||||
screen = top.ViewportToScreen (new Point (0, 0));
|
||||
Assert.Equal (1, screen.X);
|
||||
Assert.Equal (1, screen.Y);
|
||||
screen = top.ViewportToScreen (new (-1, -1, 0, 0));
|
||||
screen = top.ViewportToScreen (new Point (-1, -1));
|
||||
Assert.Equal (0, screen.X);
|
||||
Assert.Equal (0, screen.Y);
|
||||
var found = View.FindDeepestView (top, new (0, 0));
|
||||
@@ -873,7 +873,7 @@ public class NavigationTests
|
||||
Assert.Equal (0, found.Frame.X);
|
||||
Assert.Equal (0, found.Frame.Y);
|
||||
Assert.Equal (new Point (3, 2), top.ScreenToFrame (new (3, 2)));
|
||||
screen = top.ViewportToScreen (new (3, 2, 0, 0));
|
||||
screen = top.ViewportToScreen (new Point (3, 2));
|
||||
Assert.Equal (4, screen.X);
|
||||
Assert.Equal (3, screen.Y);
|
||||
found = View.FindDeepestView (top, new (screen.X, screen.Y));
|
||||
@@ -885,14 +885,14 @@ public class NavigationTests
|
||||
//Assert.Equal (3, found.FrameToScreen ().X);
|
||||
//Assert.Equal (2, found.FrameToScreen ().Y);
|
||||
Assert.Equal (new Point (13, 2), top.ScreenToFrame (new (13, 2)));
|
||||
screen = top.ViewportToScreen (new (12, 2, 0, 0));
|
||||
screen = top.ViewportToScreen (new Point (12, 2));
|
||||
Assert.Equal (13, screen.X);
|
||||
Assert.Equal (3, screen.Y);
|
||||
found = View.FindDeepestView (top, new (screen.X, screen.Y));
|
||||
Assert.Equal (view, found);
|
||||
//Assert.Equal (9, found.FrameToScreen ().X);
|
||||
//Assert.Equal (0, found.FrameToScreen ().Y);
|
||||
screen = top.ViewportToScreen (new (13, 2, 0, 0));
|
||||
screen = top.ViewportToScreen (new Point (13, 2));
|
||||
Assert.Equal (14, screen.X);
|
||||
Assert.Equal (3, screen.Y);
|
||||
found = View.FindDeepestView (top, new (13, 2));
|
||||
@@ -900,7 +900,7 @@ public class NavigationTests
|
||||
//Assert.Equal (13, found.FrameToScreen ().X);
|
||||
//Assert.Equal (2, found.FrameToScreen ().Y);
|
||||
Assert.Equal (new Point (14, 3), top.ScreenToFrame (new (14, 3)));
|
||||
screen = top.ViewportToScreen (new (14, 3, 0, 0));
|
||||
screen = top.ViewportToScreen (new Point (14, 3));
|
||||
Assert.Equal (15, screen.X);
|
||||
Assert.Equal (4, screen.Y);
|
||||
found = View.FindDeepestView (top, new (14, 3));
|
||||
@@ -910,40 +910,40 @@ public class NavigationTests
|
||||
|
||||
// view
|
||||
Assert.Equal (new Point (-4, -3), view.ScreenToFrame (new (0, 0)));
|
||||
screen = view.Margin.ViewportToScreen (new (-3, -2, 0, 0));
|
||||
screen = view.Margin.ViewportToScreen (new Point (-3, -2));
|
||||
Assert.Equal (1, screen.X);
|
||||
Assert.Equal (1, screen.Y);
|
||||
screen = view.Border.ViewportToScreen (new (-3, -2, 0, 0));
|
||||
screen = view.Border.ViewportToScreen (new Point (-3, -2));
|
||||
Assert.Equal (1, screen.X);
|
||||
Assert.Equal (1, screen.Y);
|
||||
screen = view.Padding.ViewportToScreen (new (-3, -2, 0, 0));
|
||||
screen = view.Padding.ViewportToScreen (new Point (-3, -2));
|
||||
Assert.Equal (1, screen.X);
|
||||
Assert.Equal (1, screen.Y);
|
||||
screen = view.ViewportToScreen (new (-3, -2, 0, 0));
|
||||
screen = view.ViewportToScreen (new Point (-3, -2));
|
||||
Assert.Equal (1, screen.X);
|
||||
Assert.Equal (1, screen.Y);
|
||||
screen = view.ViewportToScreen (new (-4, -3, 0, 0));
|
||||
screen = view.ViewportToScreen (new Point (-4, -3));
|
||||
Assert.Equal (0, screen.X);
|
||||
Assert.Equal (0, screen.Y);
|
||||
found = View.FindDeepestView (top, new (0, 0));
|
||||
Assert.Equal (top.Border, found);
|
||||
|
||||
Assert.Equal (new Point (-1, -1), view.ScreenToFrame (new (3, 2)));
|
||||
screen = view.ViewportToScreen (new (0, 0, 0, 0));
|
||||
screen = view.ViewportToScreen (new Point (0, 0));
|
||||
Assert.Equal (4, screen.X);
|
||||
Assert.Equal (3, screen.Y);
|
||||
found = View.FindDeepestView (top, new (4, 3));
|
||||
Assert.Equal (view, found);
|
||||
|
||||
Assert.Equal (new Point (9, -1), view.ScreenToFrame (new (13, 2)));
|
||||
screen = view.ViewportToScreen (new (10, 0, 0, 0));
|
||||
screen = view.ViewportToScreen (new Point (10, 0));
|
||||
Assert.Equal (14, screen.X);
|
||||
Assert.Equal (3, screen.Y);
|
||||
found = View.FindDeepestView (top, new (14, 3));
|
||||
Assert.Equal (top, found);
|
||||
|
||||
Assert.Equal (new Point (10, 0), view.ScreenToFrame (new (14, 3)));
|
||||
screen = view.ViewportToScreen (new (11, 1, 0, 0));
|
||||
screen = view.ViewportToScreen (new Point (11, 1));
|
||||
Assert.Equal (15, screen.X);
|
||||
Assert.Equal (4, screen.Y);
|
||||
found = View.FindDeepestView (top, new (15, 4));
|
||||
@@ -1006,80 +1006,80 @@ public class NavigationTests
|
||||
|
||||
// top
|
||||
Assert.Equal (new Point (-3, -2), top.ScreenToFrame (new (0, 0)));
|
||||
Rectangle screen = top.Margin.ViewportToScreen (new (-3, -2, 0, 0));
|
||||
var screen = top.Margin.ViewportToScreen (new Point (-3, -2));
|
||||
Assert.Equal (0, screen.X);
|
||||
Assert.Equal (0, screen.Y);
|
||||
screen = top.Border.ViewportToScreen (new (-3, -2, 0, 0));
|
||||
screen = top.Border.ViewportToScreen (new Point (-3, -2));
|
||||
Assert.Equal (0, screen.X);
|
||||
Assert.Equal (0, screen.Y);
|
||||
screen = top.Padding.ViewportToScreen (new (-3, -2, 0, 0));
|
||||
screen = top.Padding.ViewportToScreen (new Point (-3, -2));
|
||||
Assert.Equal (1, screen.X);
|
||||
Assert.Equal (1, screen.Y);
|
||||
screen = top.ViewportToScreen (new (-3, -2, 0, 0));
|
||||
screen = top.ViewportToScreen (new Point (-3, -2));
|
||||
Assert.Equal (1, screen.X);
|
||||
Assert.Equal (1, screen.Y);
|
||||
screen = top.ViewportToScreen (new (-4, -3, 0, 0));
|
||||
screen = top.ViewportToScreen (new Point (-4, -3));
|
||||
Assert.Equal (0, screen.X);
|
||||
Assert.Equal (0, screen.Y);
|
||||
var found = View.FindDeepestView (top, new (-4, -3));
|
||||
Assert.Null (found);
|
||||
Assert.Equal (Point.Empty, top.ScreenToFrame (new (3, 2)));
|
||||
screen = top.ViewportToScreen (new (0, 0, 0, 0));
|
||||
screen = top.ViewportToScreen (new Point (0, 0));
|
||||
Assert.Equal (4, screen.X);
|
||||
Assert.Equal (3, screen.Y);
|
||||
Assert.Equal (top.Border, View.FindDeepestView (top, new (3, 2)));
|
||||
//Assert.Equal (0, found.FrameToScreen ().X);
|
||||
//Assert.Equal (0, found.FrameToScreen ().Y);
|
||||
Assert.Equal (new Point (10, 0), top.ScreenToFrame (new (13, 2)));
|
||||
screen = top.ViewportToScreen (new (10, 0, 0, 0));
|
||||
screen = top.ViewportToScreen (new Point (10, 0));
|
||||
Assert.Equal (14, screen.X);
|
||||
Assert.Equal (3, screen.Y);
|
||||
Assert.Equal (top.Border, View.FindDeepestView (top, new (13, 2)));
|
||||
//Assert.Equal (10, found.FrameToScreen ().X);
|
||||
//Assert.Equal (0, found.FrameToScreen ().Y);
|
||||
Assert.Equal (new Point (11, 1), top.ScreenToFrame (new (14, 3)));
|
||||
screen = top.ViewportToScreen (new (11, 1, 0, 0));
|
||||
screen = top.ViewportToScreen (new Point (11, 1));
|
||||
Assert.Equal (15, screen.X);
|
||||
Assert.Equal (4, screen.Y);
|
||||
Assert.Equal (top, View.FindDeepestView (top, new (14, 3)));
|
||||
|
||||
// view
|
||||
Assert.Equal (new Point (-7, -5), view.ScreenToFrame (new (0, 0)));
|
||||
screen = view.Margin.ViewportToScreen (new (-6, -4, 0, 0));
|
||||
screen = view.Margin.ViewportToScreen (new Point (-6, -4));
|
||||
Assert.Equal (1, screen.X);
|
||||
Assert.Equal (1, screen.Y);
|
||||
screen = view.Border.ViewportToScreen (new (-6, -4, 0, 0));
|
||||
screen = view.Border.ViewportToScreen (new Point (-6, -4));
|
||||
Assert.Equal (1, screen.X);
|
||||
Assert.Equal (1, screen.Y);
|
||||
screen = view.Padding.ViewportToScreen (new (-6, -4, 0, 0));
|
||||
screen = view.Padding.ViewportToScreen (new Point (-6, -4));
|
||||
Assert.Equal (1, screen.X);
|
||||
Assert.Equal (1, screen.Y);
|
||||
screen = view.ViewportToScreen (new (-6, -4, 0, 0));
|
||||
screen = view.ViewportToScreen (new Point (-6, -4));
|
||||
Assert.Equal (1, screen.X);
|
||||
Assert.Equal (1, screen.Y);
|
||||
Assert.Null (View.FindDeepestView (top, new (1, 1)));
|
||||
Assert.Equal (new Point (-4, -3), view.ScreenToFrame (new (3, 2)));
|
||||
screen = view.ViewportToScreen (new (-3, -2, 0, 0));
|
||||
screen = view.ViewportToScreen (new Point (-3, -2));
|
||||
Assert.Equal (4, screen.X);
|
||||
Assert.Equal (3, screen.Y);
|
||||
Assert.Equal (top, View.FindDeepestView (top, new (4, 3)));
|
||||
Assert.Equal (new Point (-1, -1), view.ScreenToFrame (new (6, 4)));
|
||||
screen = view.ViewportToScreen (new (0, 0, 0, 0));
|
||||
screen = view.ViewportToScreen (new Point (0, 0));
|
||||
Assert.Equal (7, screen.X);
|
||||
Assert.Equal (5, screen.Y);
|
||||
Assert.Equal (view, View.FindDeepestView (top, new (7, 5)));
|
||||
Assert.Equal (new Point (6, -1), view.ScreenToFrame (new (13, 4)));
|
||||
screen = view.ViewportToScreen (new (7, 0, 0, 0));
|
||||
screen = view.ViewportToScreen (new Point (7, 0));
|
||||
Assert.Equal (14, screen.X);
|
||||
Assert.Equal (5, screen.Y);
|
||||
Assert.Equal (view, View.FindDeepestView (top, new (14, 5)));
|
||||
Assert.Equal (new Point (7, -2), view.ScreenToFrame (new (14, 3)));
|
||||
screen = view.ViewportToScreen (new (8, -1, 0, 0));
|
||||
screen = view.ViewportToScreen (new Point (8, -1));
|
||||
Assert.Equal (15, screen.X);
|
||||
Assert.Equal (4, screen.Y);
|
||||
Assert.Equal (top, View.FindDeepestView (top, new (15, 4)));
|
||||
Assert.Equal (new Point (16, -2), view.ScreenToFrame (new (23, 3)));
|
||||
screen = view.ViewportToScreen (new (17, -1, 0, 0));
|
||||
screen = view.ViewportToScreen (new Point (17, -1));
|
||||
Assert.Equal (24, screen.X);
|
||||
Assert.Equal (4, screen.Y);
|
||||
Assert.Null (View.FindDeepestView (top, new (24, 4)));
|
||||
|
||||
Reference in New Issue
Block a user