[monkey-bubble: 12/753] Provide routines for creating pixmaps from data.



commit 9bfedf3543830570035f4dc4f2452429ef1a37f7
Author: Arturo Espinosa <unammx src gnome org>
Date:   Thu Dec 18 23:19:49 1997 +0000

    Provide routines for creating pixmaps from data.

 libgnomeui/gnome-pixmap.c |   43 +++++++++++++++++++++++++++++++++++++++++++
 libgnomeui/gnome-pixmap.h |   34 +++++++++++++++++++++++++++++-----
 2 files changed, 72 insertions(+), 5 deletions(-)
---
diff --git a/libgnomeui/gnome-pixmap.c b/libgnomeui/gnome-pixmap.c
index 8db415f..7be716d 100644
--- a/libgnomeui/gnome-pixmap.c
+++ b/libgnomeui/gnome-pixmap.c
@@ -110,6 +110,25 @@ gnome_create_pixmap_gtk (GtkWidget *window, GdkPixmap **pixmap, GdkBitmap **mask
 		    file);
 }
 
+void
+gnome_create_pixmap_gtk_d (GtkWidget *window, GdkPixmap **pixmap, GdkBitmap **mask, GtkWidget *holder,
+			   char **data)
+{
+	GtkStyle *style;
+	
+	g_assert(window != NULL);
+	g_assert(pixmap != NULL);
+	g_assert(mask != NULL);
+	g_assert(holder != NULL);
+
+	if (!GTK_WIDGET_REALIZED(window))
+		gtk_widget_realize(window);
+
+	style = gtk_widget_get_style (holder);
+
+	*pixmap = gdk_pixmap_create_from_xpm_d (window->window, &mask, &style->bg[GTK_STATE_NORMAL], data);
+}
+
 GtkWidget *
 gnome_create_pixmap_widget (GtkWidget *window, GtkWidget *holder, char *file)
 {
@@ -124,6 +143,17 @@ gnome_create_pixmap_widget (GtkWidget *window, GtkWidget *holder, char *file)
 	return gtk_pixmap_new(pixmap, mask);
 }
 
+GtkWidget *
+gnome_create_pixmap_widget_d (GtkWidget *window, GtkWidget *holder, char **data)
+{
+	GdkPixmap *pixmap;
+	GdkBitmap *mask;
+
+	gnome_create_pixmap_gtk_d(window, &pixmap, &mask, holder, data);
+
+	return gtk_pixmap_new(pixmap, mask);
+}
+
 void
 gnome_set_pixmap_widget (GtkPixmap *pixmap, GtkWidget *window, GtkWidget *holder, gchar *file)
 {
@@ -139,3 +169,16 @@ gnome_set_pixmap_widget (GtkPixmap *pixmap, GtkWidget *window, GtkWidget *holder
 
 	gtk_pixmap_set(pixmap, gpixmap, mask);
 }
+
+void
+gnome_set_pixmap_widget_d (GtkPixmap *pixmap, GtkWidget *window, GtkWidget *holder, gchar **data)
+{
+	GdkPixmap *gpixmap;
+	GdkBitmap *mask;
+	
+	g_assert (pixmap != NULL);
+
+	gnome_create_pixmap_gtk_d(window, &gpixmap, &mask, holder, data);
+
+	gtk_pixmap_set(pixmap, gpixmap, mask);
+}
diff --git a/libgnomeui/gnome-pixmap.h b/libgnomeui/gnome-pixmap.h
index bc294d0..d8286e7 100644
--- a/libgnomeui/gnome-pixmap.h
+++ b/libgnomeui/gnome-pixmap.h
@@ -5,11 +5,35 @@ BEGIN_GNOME_DECLS
 
 void gnome_destroy_pixmap_cache (void);
 
-void gnome_create_pixmap_gdk (GdkWindow *window, GdkPixmap **pixmap, GdkBitmap **mask, GdkColor *transparent, char *file);
-void gnome_create_pixmap_gtk (GtkWidget *window, GdkPixmap **pixmap, GdkBitmap **mask, GtkWidget *holder, char *file);
-
-GtkWidget *gnome_create_pixmap_widget (GtkWidget *window, GtkWidget *holder, char *file);
-void gnome_set_pixmap_widget (GtkPixmap *pixmap, GtkWidget *window, GtkWidget *holder, char *file);
+void gnome_create_pixmap_gdk              (GdkWindow *window,
+					   GdkPixmap **pixmap,
+					   GdkBitmap **mask,
+					   GdkColor  *transparent,
+					   char *file);
+void gnome_create_pixmap_gtk              (GtkWidget *window,
+					   GdkPixmap **pixmap,
+					   GdkBitmap **mask,
+					   GtkWidget *holder,
+					   char *file);
+void gnome_create_pixmap_gtk_d            (GtkWidget *window,
+					   GdkPixmap **pixmap,
+					   GdkBitmap **mask,
+					   GtkWidget *holder,
+					   char **data);
+GtkWidget *gnome_create_pixmap_widget     (GtkWidget *window,
+					   GtkWidget *holder,
+					   char *file);
+GtkWidget *gnome_create_pixmap_widget_d   (GtkWidget *window,
+					   GtkWidget *holder,
+					   char **data);
+void gnome_set_pixmap_widget              (GtkPixmap *pixmap,	
+					   GtkWidget *window,
+					   GtkWidget *holder,
+					   char *file);
+void gnome_set_pixmap_widget_d            (GtkPixmap *pixmap,	
+					   GtkWidget *window,
+					   GtkWidget *holder,
+					   char **data);
 
 END_GNOME_DECLS
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]