![](https://secure.gravatar.com/avatar/3a6c2451f75d3309b1252476a8f6a4a6.jpg?s=120&d=mm&r=g)
On Aug 28, 2008, at 4:49 PM, Bryan Cole wrote:
The GL backend for Chaco is an exciting development. Althought the examples worked fine with the pyglet backend, when I tried to experiment with it I couldn't see how to use it within the context of a full TraitsUI/wx application. Pyglet doesn't seem to integrate with any other toolkit event loop.
Yep, there be the dragons. I started working on this late Tuesday night but haven't finished it yet. It is certainly possible to do, it's just that my test code is still doing funky things. :) The goal that Stefan and I were talking about is to embed a Pyglet-based CoverFlow into a Traits UI editor. (My personal goal is to then stick live Chaco plots on the CoverFlow covers. ;)
Can the gl_graphics_context be "dropped in" in place of the standard agg gc? Is there an easy switch to set this up?
You can set the KIVA_WISHLIST environment variable to "gl", and then subsequent imports of GraphicsContext from enthought.kiva will use the GC from backend_gl.py. This doesn't get you nice event handling through Enable, but it does work. You can also directly import the graphics context and play with it: from enthought.kiva.backend_gl import GraphicsContext from enthought.kiva import Font from pyglet import clock, window def main(): clock.set_fps_limit(60) win = window.Window() win.set_size(480, 320) win.set_caption("Backend GL + Pyglet") gc = GraphicsContext((480, 320)) gc.gl_init() exit = False while not exit: win.dispatch_events() gc.clear() gc.set_stroke_color((1, 0, 0, 1)) gc.set_line_width(2) gc.rect(100, 100, 200, 75) gc.stroke_path() gc.set_fill_color((0,0,1,1)) font = Font("Arial", 48) gc.set_font(font) gc.show_text_at_point("Kiva GL!", 110, 110) win.flip() clock.tick() if win.has_exit: exit = True return if __name__ == "__main__": main() -Peter