00001 #region License
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #endregion
00027
00028 using System;
00029 using System.Collections.Generic;
00030 using System.Text;
00031 using System.Windows.Forms;
00032
00033 using OpenTK.Graphics;
00034 using OpenTK.Platform;
00035
00036 namespace OpenTK
00037 {
00038 class CarbonGLControl : IGLControl
00039 {
00040 GraphicsMode mode;
00041 Control control;
00042 IWindowInfo window_info;
00043
00044 internal CarbonGLControl(GraphicsMode mode, Control owner)
00045 {
00046 this.mode = mode;
00047 this.control = owner;
00048
00049 window_info = Utilities.CreateMacOSCarbonWindowInfo(control.Handle, false, true);
00050 }
00051
00052 #region IGLControl Members
00053
00054 public IGraphicsContext CreateContext(int major, int minor, GraphicsContextFlags flags)
00055 {
00056 return new GraphicsContext(mode, WindowInfo, major, minor, flags);
00057 }
00058
00059
00060 bool lastIsIdle = false;
00061 public bool IsIdle
00062 {
00063 get
00064 {
00065 lastIsIdle = !lastIsIdle;
00066 return lastIsIdle;
00067 }
00068 }
00069
00070 public IWindowInfo WindowInfo
00071 {
00072 get
00073 {
00074 return window_info;
00075 }
00076 }
00077
00078 #endregion
00079 }
00080 }