+++ /dev/null
-/* $Id$ */
-
-#include <gtk/gtk.h>
-#include <gtkgl/gtkglarea.h>
-#include <caml/mlvalues.h>
-#include <caml/alloc.h>
-#include <caml/memory.h>
-#include <caml/callback.h>
-#include <caml/fail.h>
-
-#include "wrappers.h"
-#include "ml_glib.h"
-#include "ml_gdk.h"
-#include "ml_gtk.h"
-#include "gtkgl_tags.h"
-
-/* Conversion functions */
-#include "gtkgl_tags.c"
-
-#define GtkGLArea_val(val) ((GtkGLArea*)GtkObject_val(val))
-
-value ml_gtk_gl_area_new (value list, value share)
-{
- value cursor, res;
- int len, i;
- int *attrs;
-
- for (len = 0, cursor = list; cursor != Val_unit; cursor = Field(cursor,1))
- {
- if (Is_block(Field(cursor,0))) len += 2;
- else len++;
- }
-
- attrs = (int*) stat_alloc ((len+1)*sizeof(int));
-
- for (i = 0, cursor = list; cursor != Val_unit; cursor = Field(cursor,1))
- {
- value option = Field(cursor,0);
- if (Is_block(option)) {
- attrs[i++] = Visual_options_val(Field(option,0));
- attrs[i++] = Int_val(Field(option,1));
- }
- else attrs[i++] = Visual_options_val(option);
- }
- attrs[i] = GDK_GL_NONE;
-
- res = Val_GtkObject
- ((GtkObject*)gtk_gl_area_share_new(attrs,GtkGLArea_val(share)));
- stat_free(attrs);
- return res;
-}
-
-ML_1 (gtk_gl_area_make_current, GtkGLArea_val, Val_bool)
-ML_1 (gtk_gl_area_swapbuffers, GtkGLArea_val, Unit)