mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-11-10 10:50:10 +00:00
Don't warn if a stock icon cannot be found. (#168830, Sven Neumann)
2005-03-03 Matthias Clasen <mclasen@redhat.com> * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Don't warn if a stock icon cannot be found. (#168830, Sven Neumann)
This commit is contained in:
parent
1f6a65d375
commit
a3cee3d83a
@ -1,3 +1,9 @@
|
||||
2005-03-03 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
|
||||
Don't warn if a stock icon cannot be found. (#168830,
|
||||
Sven Neumann)
|
||||
|
||||
2005-03-03 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
* gtk/gtkwidget.c (gtk_widget_reparent_subwindows):
|
||||
|
@ -1,3 +1,9 @@
|
||||
2005-03-03 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
|
||||
Don't warn if a stock icon cannot be found. (#168830,
|
||||
Sven Neumann)
|
||||
|
||||
2005-03-03 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
* gtk/gtkwidget.c (gtk_widget_reparent_subwindows):
|
||||
|
@ -1,3 +1,9 @@
|
||||
2005-03-03 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
|
||||
Don't warn if a stock icon cannot be found. (#168830,
|
||||
Sven Neumann)
|
||||
|
||||
2005-03-03 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
* gtk/gtkwidget.c (gtk_widget_reparent_subwindows):
|
||||
|
@ -510,35 +510,15 @@ gtk_cell_renderer_pixbuf_render (GtkCellRenderer *cell,
|
||||
GdkPixbuf *colorized = NULL;
|
||||
GdkRectangle pix_rect;
|
||||
GdkRectangle draw_rect;
|
||||
gboolean stock_pixbuf = FALSE;
|
||||
|
||||
priv = GTK_CELL_RENDERER_PIXBUF_GET_PRIVATE (cell);
|
||||
|
||||
pixbuf = cellpixbuf->pixbuf;
|
||||
if (cell->is_expander)
|
||||
{
|
||||
if (cell->is_expanded &&
|
||||
cellpixbuf->pixbuf_expander_open != NULL)
|
||||
pixbuf = cellpixbuf->pixbuf_expander_open;
|
||||
else if (! cell->is_expanded &&
|
||||
cellpixbuf->pixbuf_expander_closed != NULL)
|
||||
pixbuf = cellpixbuf->pixbuf_expander_closed;
|
||||
}
|
||||
|
||||
if (!pixbuf && !priv->stock_id)
|
||||
return;
|
||||
else if (!pixbuf && priv->stock_id)
|
||||
stock_pixbuf = TRUE;
|
||||
|
||||
gtk_cell_renderer_pixbuf_get_size (cell, widget, cell_area,
|
||||
&pix_rect.x,
|
||||
&pix_rect.y,
|
||||
&pix_rect.width,
|
||||
&pix_rect.height);
|
||||
|
||||
if (stock_pixbuf)
|
||||
pixbuf = cellpixbuf->pixbuf;
|
||||
|
||||
pix_rect.x += cell_area->x;
|
||||
pix_rect.y += cell_area->y;
|
||||
pix_rect.width -= cell->xpad * 2;
|
||||
@ -548,6 +528,21 @@ gtk_cell_renderer_pixbuf_render (GtkCellRenderer *cell,
|
||||
!gdk_rectangle_intersect (expose_area, &draw_rect, &draw_rect))
|
||||
return;
|
||||
|
||||
pixbuf = cellpixbuf->pixbuf;
|
||||
|
||||
if (cell->is_expander)
|
||||
{
|
||||
if (cell->is_expanded &&
|
||||
cellpixbuf->pixbuf_expander_open != NULL)
|
||||
pixbuf = cellpixbuf->pixbuf_expander_open;
|
||||
else if (!cell->is_expanded &&
|
||||
cellpixbuf->pixbuf_expander_closed != NULL)
|
||||
pixbuf = cellpixbuf->pixbuf_expander_closed;
|
||||
}
|
||||
|
||||
if (!pixbuf)
|
||||
return;
|
||||
|
||||
if (GTK_WIDGET_STATE (widget) == GTK_STATE_INSENSITIVE || !cell->sensitive)
|
||||
{
|
||||
GtkIconSource *source;
|
||||
@ -555,7 +550,7 @@ gtk_cell_renderer_pixbuf_render (GtkCellRenderer *cell,
|
||||
source = gtk_icon_source_new ();
|
||||
gtk_icon_source_set_pixbuf (source, pixbuf);
|
||||
/* The size here is arbitrary; since size isn't
|
||||
* wildcarded in the souce, it isn't supposed to be
|
||||
* wildcarded in the source, it isn't supposed to be
|
||||
* scaled by the engine function
|
||||
*/
|
||||
gtk_icon_source_set_size (source, GTK_ICON_SIZE_SMALL_TOOLBAR);
|
||||
|
Loading…
Reference in New Issue
Block a user