]> Pileus Git - grits/commitdiff
Add some stubbed code for Mac OS support
authorAndy Spencer <andy753421@gmail.com>
Sat, 18 Jun 2011 22:12:38 +0000 (22:12 +0000)
committerAndy Spencer <andy753421@gmail.com>
Sat, 18 Jun 2011 22:12:38 +0000 (22:12 +0000)
(This won't compile yet)

src/gtkgl.c

index 9a2909aaa77a83d219ce41b01078a7be807f2f7c..6812d33bc6f870086d5017a84a61fb36cb295d94 100644 (file)
@@ -172,10 +172,42 @@ void gtk_gl_disable(GtkWidget *widget)
  * Mac OSX implementation *
  **************************/
 #elif defined(USE_CGL)
-void gtk_gl_enable(GtkWidget *widget) { }
-void gtk_gl_begin(GtkWidget *widget) { }
-void gtk_gl_end(GtkWidget *widget) { }
-void gtk_gl_disable(GtkWidget *widget) { }
+void gtk_gl_enable(GtkWidget *widget)
+{
+       CGDisplayCapture( kCGDirectMainDisplay );
+       CGLPixelFormatAttribute attribs[] =
+       {
+               kCGLPFANoRecovery,
+               kCGLPFADoubleBuffer,
+               kCGLPFAFullScreen,
+               kCGLPFAStencilSize, ( CGLPixelFormatAttribute ) 8,
+               kCGLPFADisplayMask, ( CGLPixelFormatAttribute ) CGDisplayIDToOpenGLDisplayMask( kCGDirectMainDisplay ),
+               ( CGLPixelFormatAttribute ) NULL
+       };
+
+       CGLPixelFormatObj pixelFormatObj;
+       GLint numPixelFormats;
+       CGLChoosePixelFormat( attribs, &pixelFormatObj, &numPixelFormats );
+
+       CGLCreateContext( pixelFormatObj, NULL, &contextObj );
+
+       CGLDestroyPixelFormat( pixelFormatObj );
+
+       CGLSetCurrentContext( contextObj );
+       CGLSetFullScreen( contextObj );
+}
+
+void gtk_gl_begin(GtkWidget *widget)
+{
+}
+
+void gtk_gl_end(GtkWidget *widget)
+{
+}
+
+void gtk_gl_disable(GtkWidget *widget)
+{
+}
 
 
 /****************************