From 5562310fdbc1df8fcecd41f8f882a21c033247de Mon Sep 17 00:00:00 2001 From: slava Date: Tue, 21 Mar 2006 20:17:49 +0000 Subject: [PATCH] Update X11 backend for gl-context backend words --- library/x11/ui.factor | 14 +++++++++----- library/x11/utilities.factor | 10 ---------- 2 files changed, 9 insertions(+), 15 deletions(-) diff --git a/library/x11/ui.factor b/library/x11/ui.factor index 58b3ff61fc..6195a6ca72 100644 --- a/library/x11/ui.factor +++ b/library/x11/ui.factor @@ -1,13 +1,10 @@ IN: x11 -USING: arrays freetype gadgets gadgets-launchpad +USING: arrays errors freetype gadgets gadgets-launchpad gadgets-layouts gadgets-listener hashtables kernel kernel-internals math namespaces opengl sequences x11 ; -: draw-glx-world ( world -- ) - dup world-handle first2 [ draw-world ] with-glx-context ; - M: world handle-expose-event ( event world -- ) - nip draw-glx-world ; + nip draw-world ; M: world handle-resize-event ( event world -- ) >r @@ -28,6 +25,13 @@ IN: gadgets : in-window ( gadget status dim title -- ) >r r> drop gadget-window ; +: select-gl-context ( handle -- ) + second >r dpy get swap r> glXMakeCurrent + [ "Failed to set current GLX context" throw ] unless ; + +: flush-gl-context ( handle -- ) + dpy get swap first glXSwapBuffers ; + IN: shells : ui ( -- ) diff --git a/library/x11/utilities.factor b/library/x11/utilities.factor index 96c54f8a0d..afa495a583 100644 --- a/library/x11/utilities.factor +++ b/library/x11/utilities.factor @@ -105,16 +105,6 @@ SYMBOL: windows >r dpy get r> f 1 glXCreateContext [ "Failed to create GLX context" throw ] unless* ; -: make-current ( win GLXContext -- ) - >r dpy get swap r> glXMakeCurrent - [ "Failed to set current GLX context" throw ] unless ; - -: swap-buffers ( win -- ) - dpy get swap glXSwapBuffers ; - -: with-glx-context ( win GLXContext quot -- ) - pick >r >r make-current r> call r> swap-buffers ; - ! Initialization : check-display