> Could someone please help me with this problem. I would like to have a > better understanding of how to use GdkGC's. Here is some example code to > explain what I would like to be able to do: > > > def on_button1_clicked(widget, mainObj): > > GdkWindow = widget.get_parent_window() > gc = GdkWindow.new_gc() > > for x in range(1,64): > for y in range(1,48): > > color = GdkColor(x * 100, y * 100, 0) > gc.foreground = color > > mainObj.drawingarea1.draw_point(gc, x, y) > > > This code does not work the way I would expect, the color used is > allways the default foreground of the theme I have installed. > > I have tried to find an example of someone changing the color in a GdkGC > and drawing on a DrawingArea. The code I have seen only uses the default > colors. > > Thanks allot, > > Phil > . > Well this is what I came up with, I'll put it here for anyone else. Thanks to Fran�ois Pinard's post http://www.daa.com.au/pipermail/pygtk/2000-August/000247.html and [EMAIL PROTECTED] post http://www.daa.com.au/pipermail/pygtk/2000-August/000219.html def on_button1_clicked(widget, mainObj): xmax = 64. ymax = 48. zoom = 16 bdr = 1 area = mainObj.drawingarea1.get_window() pixmap = create_pixmap(area, area.width, area.height) gc = area.new_gc() cm = mainObj.drawingarea1.get_style().colormap black_gc = mainObj.drawingarea1.get_style().black_gc white_gc = mainObj.drawingarea1.get_style().white_gc x = 0 y = 0 FILL = 1 NOFILL = 0 for x in range(0, xmax): for y in range(0, ymax): r = (y / ymax) * 65535 g = (x / xmax) * 65535 b = (r + g) / 2 color = cm.alloc(r, g, b) gc.foreground = color #draw_arc(pixmap, gc, FILL, x * zoom, y * zoom , zoom-bdr , zoom-bdr , 90 * 64, 360 * 64) draw_rectangle(pixmap, gc, FILL, x * zoom + 1, y * zoom, zoom - bdr, zoom - bdr) #draw_point(pixmap, white_gc, x * zoom + (zoom/2), y * zoom + (zoom/2)) draw_pixmap(area, gc, pixmap, 0, 0, 0, 0, (xmax) * zoom, (ymax) * zoom) Phil . _______________________________________________ pygtk mailing list [EMAIL PROTECTED] http://www.daa.com.au/mailman/listinfo/pygtk
