[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gtk-devel
Subject:    Re: GdkPixbuf vs. Cairo, new image library needed?
From:       Havoc Pennington <hp () redhat ! com>
Date:       2007-10-14 23:45:26
Message-ID: 4712AA16.9090202 () redhat ! com
[Download RAW message or body]

Hi,

Milosz Derezynski wrote:
> I've been thninking about this issue for some while now as well, and 
> I've written (in gtkmm straight, so i didn't attempt to provide patches 
> yet) a CairoImageSurface cellrenderer, and a few miscellaneous widgets 
> which render directly a Cairo ImageSurface to a drawable instead of 
> doing roundtrips. The renderer is a drop-in replacement for 
> CellRendererPixbuf, it also has a pixbuf property, in which case it will 
> render just that, otherwise it's possible to make it render imagesurface 
> directly, or construct some in a cell data function.

In GTK itself it's probably best to add a "surface" property to 
RendererPixbuf instead of adding a new object ... (should decide on the 
name of the "surface" property and use it consistently in GtkImage, etc. 
also)

The name of RendererPixbuf ends up sort of weird, should have been 
RendererImage, but that's life I guess.

> There is however one more problem which wasn't discussed yet in this 
> thread: Widget insensitivity and the gtk style engines. The Pixbuf 
> cellrenderer uses the gtk style engine to render its state when 
> insensitive. It also uses a "gtkcellrendererpixbuf" detail to the style 
> engine, and (thinking of Aaron Bockover's blog post about "Suboptimal 
> Theming") possibly checks if the "widget" arg passed to it is a TreeView 
> as well (i didn't check).

I can't think of a good solution here other than modifying all the 
themes. Maybe fixing just a few most popular engines would cover most users?

Havoc

_______________________________________________
gtk-devel-list mailing list
gtk-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-devel-list
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic