you destroy them by releasing the reference, once this is 0, gtk frees it automatically. you do this after your image has been created:
g_object_unref(pixbufb
g_object_unref(pixbuf_scaled);
2008/8/28 Harinandan S <harinandans gmail com>
Hi All,I made the transition smooth by destroying only the image and recreating a new one. I now have another problem - memory leak. I first create a pixbuf, scale it and then create an image widget from the scaled pixbuf. I see a memory leak here. I feel that its because i am not freeing pixbuf at all. My code is like thispixbuf = gdk_pixbuf_new_from_file(filename,NULL );
pixbuf_scaled = gdk_pixbuf_scale_simple(pixbuf,640,480,GDK_INTERP_BILINEAR);image = gtk_image_new_from_pixbuf(pixbuf_scaled);I destroy image whenever i need a new image later. How can i free pixbuf and pixbuf_scaled after image widget is created?--
On Wed, Aug 27, 2008 at 8:28 PM, richard boaz <ivor boaz gmail com> wrote:
I guess I don't understand why you have to create new windows. Why can you not use the same window and GtkImage widget to display all images? thus avoiding having to create them every time?
On Wed, Aug 27, 2008 at 4:50 PM, Harinandan S <harinandans gmail com> wrote:
Hi,I also tried a sequence in which i create next frame before hand. ieon startup:create window1show window 1create window2on nextshow window2create window3Similarly on subsequent next clicks. I see no improvement. In the above sequence only show window was the work, which made me think that show may be taking most of the time in transition.I am not able to use the sequence you mentioned since I use GtkImage and not GtkDrawingArea.On Wed, Aug 27, 2008 at 7:53 PM, richard boaz <ivor boaz gmail com> wrote:
Hi,
Try a different sequence, if possible:
With this sequence, you are guaranteed that the only work required is to create the next image and display it, i.e., the absolute minimum of work required.
- at startup, create window and drawing area to display image
- never destroy window and drawing area, except on application exit
- on next:
3.1 destroy previous image
3.2 create next image for display- invoke the expose callback on the drawing area to display image from 3.2
richard
2008/8/27 Harinandan S <harinandans gmail com>
_______________________________________________Hi All,I am implementing a image viewer using GTK on DirectFB on an embedded ARM. When i press next i should get a new image. At present i am putting an image(VGA size) in a window and destroying the window and creating a new window with next image. I see that its taking a lot of time in transition.At present my sequence is :when next button is pressed -1. Create new window with new image.2. Show new window3. Destroy old windowI thought old window will still be shown until new window is created so transition will be smooth. But still transition is taking time.Is there any better way to do this so that the transition is smooth?
--
Regards,
Harinandan S
gtk-list mailing list
gtk-list gnome org
http://mail.gnome.org/mailman/listinfo/gtk-list
--
Regards,
Harinandan S
Regards,
Harinandan S
_______________________________________________
gtk-list mailing list
gtk-list gnome org
http://mail.gnome.org/mailman/listinfo/gtk-list