root/pygtkimageview/tests/demo06.py

Revision 626, 1.1 kB (checked in by bjourne, 4 years ago)

Add simple test program for detecting off by one errors.

Line 
1 '''
2 This program displays a pixbuf with a diagonal pattern. It can be used
3 to detect off by one errors in gtkimageview by scrolling the view. See
4 ticket #31.
5 '''
6 import gtk
7 import gtkimageview
8
9 # Render a diagonal pattern.
10 data = ['\x00'] * 3 * 1600 * 1600
11 for n in range(0, 1600 * 1600, 3):
12     data[n * 3] = '\xff'
13     data[n * 3 + 1] = '\xff'
14     data[n * 3 + 2] = '\xff'
15 for y in range(1600):
16     for x in range(450):
17         line_ofs = y * 1600 * 3
18         data[line_ofs + x * 3] = '\xff'
19         data[line_ofs + (1599 - x) * 3 + 1] = '\xff'
20 for y in range(450):
21     for x in range(1600):
22         data[y * 1600 * 3 + x * 3 + 2] = '\xff'
23
24 pixbuf = gtk.gdk.pixbuf_new_from_data(''.join(data),
25                                       gtk.gdk.COLORSPACE_RGB, False, 8,
26                                       1600, 1600,
27                                       1600 * 3)
28        
29 view = gtkimageview.ImageView()
30 view.set_pixbuf(pixbuf)
31
32 win = gtk.Window(gtk.WINDOW_TOPLEVEL)
33 win.set_default_size(700, 700)
34 win.connect('destroy', gtk.main_quit)
35 win.add(view)
36 win.show_all()
37 gtk.main()
Note: See TracBrowser for help on using the browser.