ClassiCube/ClassicalSharp/Platform/IPlatformWindow.cs
UnknownShadow200 98d435b110 fix licensing
2017-01-20 09:12:04 +11:00

49 lines
903 B
C#

// Copyright 2014-2017 ClassicalSharp | Licensed under BSD-3
using System;
using System.Drawing;
using OpenTK;
using OpenTK.Input;
using OpenTK.Platform;
namespace ClassicalSharp {
/// <summary> Abstracts away a platform specific window, and input handler mechanism. </summary>
public interface IPlatformWindow {
int Width { get; }
int Height { get; }
bool VSync { get; set; }
bool Exists { get; }
bool Focused { get; }
bool CursorVisible { get; set; }
Point DesktopCursorPos { get; set; }
MouseDevice Mouse { get; }
KeyboardDevice Keyboard { get; }
Point PointToScreen(Point coords);
WindowState WindowState { get; set; }
IWindowInfo WindowInfo { get; }
string ClipboardText { get; set; }
void LoadIcon();
void Run();
void SwapBuffers();
void Exit();
event EventHandler<KeyPressEventArgs> KeyPress;
}
}