2007-08-10 11:27:13 +02:00
|
|
|
|
#region --- License ---
|
2008-01-31 14:15:17 +01:00
|
|
|
|
/* Licensed under the MIT/X11 license.
|
|
|
|
|
* Copyright (c) 2006-2008 the OpenTK Team.
|
|
|
|
|
* This notice may not be removed from any source distribution.
|
|
|
|
|
* See license.txt for licensing detailed licensing details.
|
2007-08-10 11:27:13 +02:00
|
|
|
|
*/
|
|
|
|
|
#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;
|
2008-01-31 14:15:17 +01:00
|
|
|
|
using OpenTK.Graphics;
|
2007-09-26 13:53:41 +02:00
|
|
|
|
|
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>
|
2008-01-31 14:15:17 +01:00
|
|
|
|
internal interface INativeGLWindow : IResizable, IDisposable
|
2007-07-23 02:15:18 +02:00
|
|
|
|
{
|
2008-03-01 14:15:31 +01:00
|
|
|
|
void CreateWindow(int width, int height, GraphicsMode mode, out IGraphicsContext context);
|
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; }
|
2008-01-31 14:17:42 +01:00
|
|
|
|
//IGraphicsContext Context { get; }
|
2007-11-10 19:24:30 +01:00
|
|
|
|
IInputDriver InputDriver { get; }
|
2008-04-20 19:54:16 +02:00
|
|
|
|
//bool Fullscreen { get; set; }
|
2008-04-13 23:32:04 +02:00
|
|
|
|
WindowState WindowState { get; set; }
|
2008-04-20 19:54:16 +02:00
|
|
|
|
WindowBorder WindowBorder { get; set; }
|
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
|
|
|
|
}
|