From 406df5dc3c85261fd6da28771d23de1e5a2bbd54 Mon Sep 17 00:00:00 2001 From: Carlos Carvallo Date: Wed, 01 May 2013 01:30:58 +0000 Subject: modificaciones sobre transparencias de los widgets --- diff --git a/example-exp.py b/example-exp.py new file mode 100755 index 0000000..eaef203 --- /dev/null +++ b/example-exp.py @@ -0,0 +1,57 @@ +#!/usr/bin/python +import gtk +import gobject + + +class MyApp(): + + def __init__(self): + window = gtk.Window() + window.set_decorated(False) + window.set_opacity(0) + + drawing_area = gtk.DrawingArea() + drawing_area.set_size_request(512, 512) + + #self.pixbuf = gtk.gdk.Pixbuf(gtk.gdk.COLORSPACE_RGB, True, 8, 300, 300) + + window.connect('destroy', self.destroy) + drawing_area.connect('configure_event', self.__configure_cb) + drawing_area.connect('expose-event', self.__expose_cb) + + window.add(drawing_area) + + window.set_position(gtk.WIN_POS_CENTER_ALWAYS) + window.show() + drawing_area.show() + + def destroy(self, window, data=None): + gtk.main_quit() + + def __configure_cb(self, drawing_area, data=None): + x, y, width, height = drawing_area.get_allocation() + + drawing_area.window.set_opacity(0) + canvas = drawing_area.window + + #self.pixmap = gtk.gdk.Pixmap(canvas, width, height, depth=-1) + + #self.pixmap.draw_pixbuf(None, self.pixbuf, 0, 0, 0, 0, -1, -1, + # gtk.gdk.RGB_DITHER_NONE, 0, 0) + return True + + def __expose_cb(self, drawing_area, data=None): + x, y, width, height = data.area + #context = drawing_area.get_style().fg_gc[gtk.STATE_NORMAL] + context = drawing_area.window.new_gc(foreground=None, background=None) + + canvas = drawing_area.window + + + canvas.draw_drawable(context, self.pixmap, x, y, x, y, width, height) + + return False + +if __name__ == "__main__": + my_app = MyApp() + gtk.main() -- cgit v0.9.1