2007-08-10 11:27:13 +02:00
|
|
|
|
#region --- License ---
|
|
|
|
|
/* Copyright (c) 2006, 2007 Stefanos Apostolopoulos
|
|
|
|
|
* See license.txt for license info
|
|
|
|
|
*/
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
using System;
|
2007-07-23 02:15:18 +02:00
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Text;
|
|
|
|
|
|
2007-09-26 13:53:41 +02:00
|
|
|
|
using OpenTK.Input;
|
|
|
|
|
|
2007-07-23 02:15:18 +02:00
|
|
|
|
namespace OpenTK.Platform
|
|
|
|
|
{
|
2007-08-05 15:42:31 +02:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// This interface supports OpenTK, and is not intended for use by OpenTK programs.
|
|
|
|
|
/// </summary>
|
2007-10-15 13:11:38 +02:00
|
|
|
|
interface INativeGLWindow : IResizable, IDisposable
|
2007-07-23 02:15:18 +02:00
|
|
|
|
{
|
2007-08-04 14:09:58 +02:00
|
|
|
|
void CreateWindow(DisplayMode mode);
|
2007-08-06 13:22:18 +02:00
|
|
|
|
void DestroyWindow();
|
2007-07-23 02:15:18 +02:00
|
|
|
|
void ProcessEvents();
|
2008-01-06 03:25:33 +01:00
|
|
|
|
void PointToClient(ref System.Drawing.Point p);
|
|
|
|
|
void PointToScreen(ref System.Drawing.Point p);
|
2007-07-23 02:15:18 +02:00
|
|
|
|
|
2007-08-06 11:22:04 +02:00
|
|
|
|
bool Exists { get; }
|
2007-08-05 15:42:31 +02:00
|
|
|
|
IWindowInfo WindowInfo { get; }
|
2007-08-06 13:22:18 +02:00
|
|
|
|
|
2007-09-26 13:53:41 +02:00
|
|
|
|
string Title { get; set; }
|
|
|
|
|
bool Visible { get; set; }
|
2007-10-15 13:11:38 +02:00
|
|
|
|
bool IsIdle { get; }
|
2007-12-09 19:15:51 +01:00
|
|
|
|
//IGLContext Context { get; }
|
2007-11-10 19:24:30 +01:00
|
|
|
|
IInputDriver InputDriver { get; }
|
2007-09-26 13:53:41 +02:00
|
|
|
|
|
2007-08-06 13:22:18 +02:00
|
|
|
|
event CreateEvent Create;
|
|
|
|
|
event DestroyEvent Destroy;
|
2007-07-23 02:15:18 +02:00
|
|
|
|
}
|
2007-08-06 13:22:18 +02:00
|
|
|
|
|
|
|
|
|
public delegate void CreateEvent(object sender, EventArgs e);
|
|
|
|
|
public delegate void DestroyEvent(object sender, EventArgs e);
|
2007-07-23 02:15:18 +02:00
|
|
|
|
}
|