factor/contrib/x11/gl.factor

16 lines
552 B
Factor
Raw Normal View History

2005-12-29 12:49:44 -05:00
IN: gl USING: kernel words sequences alien arrays namespaces x xlib x11 ;
: >int-array ( seq -- <int-array> )
dup length <int-array> swap dup length >array [ pick set-int-nth ] 2each ;
: >attributes ( seq -- attributes )
0 add [ dup word? [ execute ] [ ] if ] map ;
: choose-visual ( attributes -- XVisualInfo* )
>attributes >int-array dpy get scr get rot glXChooseVisual ;
: create-context ( XVisualInfo* -- GLXContext )
>r dpy get r> 0 <alien> True glXCreateContext ;
: make-current ( GLXContext -- Bool ) >r dpy get win get r> glXMakeCurrent ;