]> gitweb.factorcode.org Git - factor.git/blob - basis/ui/backend/backend.factor
Merge branch 'master' into experimental (untested!)
[factor.git] / basis / ui / backend / backend.factor
1 ! Copyright (C) 2006, 2007 Slava Pestov.
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: kernel namespaces opengl opengl.gl ;
4 IN: ui.backend
5
6 SYMBOL: ui-backend
7
8 HOOK: do-events ui-backend ( -- )
9
10 HOOK: set-title ui-backend ( string world -- )
11
12 HOOK: set-fullscreen* ui-backend ( ? world -- )
13
14 HOOK: fullscreen* ui-backend ( world -- ? )
15
16 HOOK: (open-window) ui-backend ( world -- )
17
18 HOOK: (close-window) ui-backend ( handle -- )
19
20 HOOK: (open-offscreen-buffer) ui-backend ( world -- )
21
22 HOOK: (close-offscreen-buffer) ui-backend ( handle -- )
23
24 HOOK: raise-window* ui-backend ( world -- )
25
26 GENERIC: select-gl-context ( handle -- )
27
28 GENERIC: flush-gl-context ( handle -- )
29
30 HOOK: offscreen-pixels ui-backend ( world -- alien w h )
31
32 HOOK: beep ui-backend ( -- )
33
34 : with-gl-context ( handle quot -- )
35     swap [ select-gl-context call ] keep
36     glFlush flush-gl-context gl-error ; inline