Move ScreenToGameViewport from Engine to Screen
And make it accessible from the C# side
This commit is contained in:
@@ -413,24 +413,6 @@ bool Engine::HasGameViewportFocus()
|
||||
#endif
|
||||
}
|
||||
|
||||
Vector2 Engine::ScreenToGameViewport(const Vector2& screenPos)
|
||||
{
|
||||
#if USE_EDITOR
|
||||
return Editor::Managed->ScreenToGameViewport(screenPos);
|
||||
#else
|
||||
return MainWindow ? MainWindow->ScreenToClient(screenPos) : Vector2::Minimum;
|
||||
#endif
|
||||
}
|
||||
|
||||
Vector2 Engine::GameViewportToScreen(const Vector2& viewportPos)
|
||||
{
|
||||
#if USE_EDITOR
|
||||
return Editor::Managed->GameViewportToScreen(viewportPos);
|
||||
#else
|
||||
return MainWindow ? MainWindow->ClientToScreen(viewportPos) : Vector2::Minimum;
|
||||
#endif
|
||||
}
|
||||
|
||||
void Engine::OnPause()
|
||||
{
|
||||
LOG(Info, "App paused");
|
||||
|
||||
@@ -153,20 +153,6 @@ public:
|
||||
/// <returns>True if game viewport is focused, otherwise false.</returns>
|
||||
static bool HasGameViewportFocus();
|
||||
|
||||
/// <summary>
|
||||
/// Converts the screen-space position to the game viewport position.
|
||||
/// </summary>
|
||||
/// <param name="screenPos">The screen-space position.</param>
|
||||
/// <returns>The game viewport position.</returns>
|
||||
static Vector2 ScreenToGameViewport(const Vector2& screenPos);
|
||||
|
||||
/// <summary>
|
||||
/// Converts the game viewport position to the screen-space position.
|
||||
/// </summary>
|
||||
/// <param name="viewportPos">The game viewport position.</param>
|
||||
/// <returns>The screen-space position.</returns>
|
||||
static Vector2 GameViewportToScreen(const Vector2& viewportPos);
|
||||
|
||||
private:
|
||||
|
||||
static void OnPause();
|
||||
|
||||
@@ -66,6 +66,24 @@ void Screen::SetSize(const Vector2& value)
|
||||
Size = value;
|
||||
}
|
||||
|
||||
Vector2 Screen::ScreenToGameViewport(const Vector2& screenPos)
|
||||
{
|
||||
#if USE_EDITOR
|
||||
return Editor::Managed->ScreenToGameViewport(screenPos);
|
||||
#else
|
||||
return MainWindow ? MainWindow->ScreenToClient(screenPos) : Vector2::Minimum;
|
||||
#endif
|
||||
}
|
||||
|
||||
Vector2 Screen::GameViewportToScreen(const Vector2& viewportPos)
|
||||
{
|
||||
#if USE_EDITOR
|
||||
return Editor::Managed->GameViewportToScreen(viewportPos);
|
||||
#else
|
||||
return MainWindow ? MainWindow->ClientToScreen(viewportPos) : Vector2::Minimum;
|
||||
#endif
|
||||
}
|
||||
|
||||
bool Screen::GetCursorVisible()
|
||||
{
|
||||
#if USE_EDITOR
|
||||
|
||||
@@ -33,6 +33,20 @@ DECLARE_SCRIPTING_TYPE_NO_SPAWN(Screen);
|
||||
/// <returns>The value</returns>
|
||||
API_PROPERTY() static Vector2 GetSize();
|
||||
|
||||
/// <summary>
|
||||
/// Converts the screen-space position to the game viewport position.
|
||||
/// </summary>
|
||||
/// <param name="screenPos">The screen-space position.</param>
|
||||
/// <returns>The game viewport position.</returns>
|
||||
API_FUNCTION() static Vector2 ScreenToGameViewport(const Vector2& screenPos);
|
||||
|
||||
/// <summary>
|
||||
/// Converts the game viewport position to the screen-space position.
|
||||
/// </summary>
|
||||
/// <param name="viewportPos">The game viewport position.</param>
|
||||
/// <returns>The screen-space position.</returns>
|
||||
API_FUNCTION() static Vector2 GameViewportToScreen(const Vector2& viewportPos);
|
||||
|
||||
/// <summary>
|
||||
/// Sets the window size.
|
||||
/// </summary>
|
||||
|
||||
Reference in New Issue
Block a user