This file is indexed.

/usr/share/pyshared/glitch/gtk/gtkcamera.py is in python-glitch 0.6-3.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
from __future__ import with_statement

import gtk, gobject
import gtk.gtkgl
import gtk.gdkgl
gobject.threads_init()

from glitch.camera import Camera

class GtkCamera(Camera, gtk.gtkgl.widget.DrawingArea):
    "A camera that is also a C{gtk.Widget}."

    mode = (
        gtk.gdkgl.MODE_ACCUM |
        gtk.gdkgl.MODE_RGB |
        gtk.gdkgl.MODE_DEPTH |
        gtk.gdkgl.MODE_DOUBLE |
        gtk.gdkgl.MODE_STENCIL)

    def __init__(self, **kwargs):
        glconfig = gtk.gdkgl.Config(mode=self.mode)
        gtk.gtkgl.widget.DrawingArea.__init__(self, glconfig)
        Camera.__init__(self, **kwargs)
        self.connect('expose-event', self.expose)

    def __enter__(self):
        context = gtk.gtkgl.widget_get_gl_context(self)
        drawable = self.get_gl_drawable()

        if not drawable.gl_begin(context):
            raise RuntimeError("couldn't begin GL drawing")

        return drawable.get_size()

    def __exit__(self, type, exception, traceback):
        drawable = self.get_gl_drawable()
        drawable.gl_end()
        drawable.swap_buffers()

    def expose(self, widget, e):
        with self as (w, h):
            (self.context['w'], self.context['h']) = (w, h)
            Camera.render(self, None)

    def refresh(self):
        self.queue_draw()

    def refresh_now(self):
        self.refresh()
        while gtk.events_pending():
            gtk.main_iteration()

    def make_window(self, fullscreen=False):
        w = gtk.Window()
        w.connect('destroy', lambda w: gtk.main_quit())
        w.add(self)
        if fullscreen:
            w.fullscreen()

        return w

    def run(self,fullscreen=False):
        w = self.make_window(fullscreen)
        w.show_all()

        try:
            gtk.main()
        except KeyboardInterrupt:
            pass