Opentk/Source/OpenTK/Platform/IGameWindow.cs

41 lines
1.2 KiB
C#

#region --- License ---
/* Copyright (c) 2006, 2007 Stefanos Apostolopoulos
* See license.txt for license info
*/
#endregion
using System;
using System.Collections.Generic;
using System.Text;
namespace OpenTK.Platform
{
interface IGameWindow : INativeGLWindow
{
void Run();
void OnRenderFrame(RenderFrameEventArgs e);
void OnUpdateFrame(UpdateFrameEventArgs e);
void OnLoad(EventArgs e);
void Exit();
void SwapBuffers();
event UpdateFrameEvent UpdateFrame;
event RenderFrameEvent RenderFrame;
event LoadEvent Load;
event UnloadEvent Unload;
bool IsExiting { get; }
//IList<OpenTK.Input.Keyboard> Keyboard { get; }
//IList<OpenTK.Input.Mouse> Mouse { get; }
OpenTK.Input.KeyboardDevice Keyboard { get; }
OpenTK.Input.MouseDevice Mouse { get; }
}
public delegate void UpdateFrameEvent(GameWindow sender, UpdateFrameEventArgs e);
public delegate void RenderFrameEvent(GameWindow sender, RenderFrameEventArgs e);
public delegate void LoadEvent(GameWindow sender, EventArgs e);
public delegate void UnloadEvent(GameWindow sender, EventArgs e);
}