From 1001243b675d98e2d22636a5ac4628c80a3a84a6 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jan=20Dj=C3=A4rv?= Date: Tue, 16 Aug 2005 19:33:40 +0000 Subject: [PATCH] * gtkutil.c (xg_set_frame_icon): New function. --- src/gtkutil.c | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/src/gtkutil.c b/src/gtkutil.c index 0e0f6cd898a..3b590e0faed 100644 --- a/src/gtkutil.c +++ b/src/gtkutil.c @@ -241,7 +241,7 @@ xg_create_default_cursor (dpy) /* Apply GMASK to GPIX and return a GdkPixbuf with an alpha channel. */ -GdkPixbuf * +static GdkPixbuf * xg_get_pixbuf_from_pix_and_mask (gpix, gmask, cmap) GdkPixmap *gpix; GdkPixmap *gmask; @@ -952,6 +952,24 @@ xg_set_background_color (f, bg) } +/* Set the frame icon to ICON_PIXMAP/MASK. This must be done with GTK + functions so GTK does not overwrite the icon. */ + +void +xg_set_frame_icon (f, icon_pixmap, icon_mask) + FRAME_PTR f; + Pixmap icon_pixmap; + Pixmap icon_mask; +{ + GdkDisplay *gdpy = gdk_x11_lookup_xdisplay (FRAME_X_DISPLAY (f)); + GdkPixmap *gpix = gdk_pixmap_foreign_new_for_display (gdpy, icon_pixmap); + GdkPixmap *gmask = gdk_pixmap_foreign_new_for_display (gdpy, icon_mask); + GdkPixbuf *gp = xg_get_pixbuf_from_pix_and_mask (gpix, gmask, NULL); + + gtk_window_set_icon (GTK_WINDOW (FRAME_GTK_OUTER_WIDGET (f)), gp); +} + + /*********************************************************************** Dialog functions -- 2.39.2