module Fox # # A GL context is an object representing the OpenGL state information. # Multiple GL context may share display lists to conserve memory. # When drawing multiple windows, it may be advantageous to share not only # display lists, but also GL contexts. Since the GL context is created # for a certain frame-buffer configuration, sharing of GL contexts is # only possible if the windows sharing the GL context all have the same # GL visual. # However, display lists may be shared between different GL contexts. # class FXGLContext < FXId # The visual [FXGLVisual] attr_reader :visual # Construct an OpenGL context. # If _other_ is a reference to an existing FXGLContext, this context will # share display lists with that other context. # Otherwise, this context will use its own private display list. def initialize(app, visual, other=nil) # :yields: theGLContext end # Return +true+ if it is sharing display lists. def shared?; end # Make this OpenGL context current prior to performing OpenGL commands. def begin(drawable); end # Make this OpenGL context non-current. def end(); end # Swap front and back buffer def swapBuffers(); end # Copy part of backbuffer to front buffer [Mesa] def swapSubBuffers(x, y, w, h); end end end