using Robust.Client.Graphics; using Robust.Shared.Map; using Robust.Shared.Maths; namespace Robust.Client.UserInterface.CustomControls { /// /// Base interface for controls that display a viewport. /// /// /// This has to be implemented for correct handling of input, /// you do not strictly need to implement this otherwise. /// public interface IViewportControl { IClydeWindow? Window { get; } /// /// Converts a point on the screen to map coordinates. /// /// /// The coordinates, in ABSOLUTE SCREEN PIXEL COORDINATES. NOT CONTROL-RELATIVE COORDINATES. /// MapCoordinates ScreenToMap(Vector2 coords); /// /// Converts a point on the map to screen coordinates. /// /// /// The coordinates, in ABSOLUTE SCREEN PIXEL COORDINATES. NOT CONTROL-RELATIVE COORDINATES. /// Vector2 WorldToScreen(Vector2 map); } }