mirror of
https://github.com/ClassiCube/ClassiCube.git
synced 2025-01-23 01:21:57 -05:00
49 lines
903 B
C#
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;
|
|
}
|
|
}
|