[pygtk] Reload gtk.Image contents
Daniil Baturin
daniil at baturin.org
Mon Jan 28 23:43:18 WST 2013
I'm using set_from_file(), and it kind of works. The problem is that the
image is updated only second time event handler that replots and invokes
set_from_file() is triggered. I double checked replot occurs every time
event is caught, when I open the image file manually it contains the
updated plot.
I added queue_redraw() after set_from_file(), but it didn't help.
This is what I have there now:
def apply_equations(self, widget, data):
x_equation = data[0].get_text()
y_equation = data[1].get_text()
image = data[2]
print "Equations: x=%s, y=%s" % (x_equation, y_equation)
expression = x_equation + "," + y_equation
plotter.set_expression(expression)
plotter.plot()
image.set_from_file("test.png")
image.queue_draw()
self.equations_apply.connect("clicked", self.apply_equations,
(self.x_expression, self.y_expression, self.image) )
On 01/28/2013 10:02 PM, Niklas Koep wrote:
> If you're updating your gtk.Image contents via its set_from_file()
> method you don't need to request an update at all -- it happens
> automatically. Generally speaking, however, gtk.Widget implements a
> queue_draw() method which can be used to invalidate the entire visible
> area of a widget which in turn causes it to be redrawn. For your use
> this doesn't seem to be required though. Hope this helps.
>
>
>
> 2013/1/27 Daniil Baturin <daniil at baturin.org <mailto:daniil at baturin.org>>
>
> Hi,
> What is the proper way to reload gtk.Image contents?
>
> I want to make a simple educational gnuplot frontend that would
> allow playing with parametric curve coefficients by using spin
> buttons, expressions with substituted constants will be passed to
> gnuplot and generated png displayed in a gtk.Image. But I'm not
> sure how to request update of displayed image if the image has
> changed.
>
>
> --
> #!/usr/bin/env perl
> @a=split(//, "daniil @ baturin . org" );# Daniil Baturin
> @b=split(//,q/Px%!+o0Q6lh*7dp$. at 8#%|y{/);while($i<24){$_.=
> chr((ord(@b[$i])-ord(@a[$i])+62)%94+32);$i++};print"$_\n"#
>
> _______________________________________________
> pygtk mailing list pygtk at daa.com.au <mailto:pygtk at daa.com.au>
> http://www.daa.com.au/mailman/listinfo/pygtk
> Read the PyGTK FAQ: http://faq.pygtk.org/
>
>
--
#!/usr/bin/env perl
@a=split(//, "daniil @ baturin . org" );# Daniil Baturin
@b=split(//,q/Px%!+o0Q6lh*7dp$. at 8#%|y{/);while($i<24){$_.=
chr((ord(@b[$i])-ord(@a[$i])+62)%94+32);$i++};print"$_\n"#
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.daa.com.au/pipermail/pygtk/attachments/20130128/08abd896/attachment.html>
More information about the pygtk
mailing list