gdkpixmap.h 3.26 KB
Newer Older
Owen Taylor's avatar
Started  
Owen Taylor committed
1 2 3 4
#ifndef __GDK_PIXMAP_H__
#define __GDK_PIXMAP_H__

#include <gdk/gdktypes.h>
5
#include <gdk/gdkdrawable.h>
Owen Taylor's avatar
Started  
Owen Taylor committed
6 7 8 9 10

#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */

11 12 13 14 15 16 17 18
typedef struct _GdkPixmapObject GdkPixmapObject;
typedef struct _GdkPixmapObjectClass GdkPixmapObjectClass;

#define GDK_TYPE_PIXMAP              (gdk_pixmap_get_type ())
#define GDK_PIXMAP(object)           (G_TYPE_CHECK_INSTANCE_CAST ((object), GDK_TYPE_PIXMAP, GdkPixmap))
#define GDK_PIXMAP_CLASS(klass)      (G_TYPE_CHECK_CLASS_CAST ((klass), GDK_TYPE_PIXMAP, GdkPixmapObjectClass))
#define GDK_IS_PIXMAP(object)        (G_TYPE_CHECK_INSTANCE_TYPE ((object), GDK_TYPE_PIXMAP))
#define GDK_IS_PIXMAP_CLASS(klass)   (G_TYPE_CHECK_CLASS_TYPE ((klass), GDK_TYPE_PIXMAP))
19
#define GDK_PIXMAP_GET_CLASS(obj)    (G_TYPE_INSTANCE_GET_CLASS ((obj), GDK_TYPE_PIXMAP, GdkPixmapObjectClass))
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
#define GDK_PIXMAP_OBJECT(object)    ((GdkPixmapObject *) GDK_PIXMAP (object))

struct _GdkPixmapObject
{
  GdkDrawable parent_instance;
  
  GdkDrawable *impl;  /* window-system-specific delegate object */

  gint depth;
};

struct _GdkPixmapObjectClass
{
  GdkDrawableClass parent_class;

};

Elliot Lee's avatar
Elliot Lee committed
37
GType      gdk_pixmap_get_type          (void) G_GNUC_CONST;
38

Owen Taylor's avatar
Started  
Owen Taylor committed
39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
/* Pixmaps
 */
GdkPixmap* gdk_pixmap_new		(GdkWindow  *window,
					 gint	     width,
					 gint	     height,
					 gint	     depth);
GdkBitmap* gdk_bitmap_create_from_data	(GdkWindow   *window,
					 const gchar *data,
					 gint	      width,
					 gint	      height);
GdkPixmap* gdk_pixmap_create_from_data	(GdkWindow   *window,
					 const gchar *data,
					 gint	      width,
					 gint	      height,
					 gint	      depth,
					 GdkColor    *fg,
					 GdkColor    *bg);
Owen Taylor's avatar
Owen Taylor committed
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74

GdkPixmap* gdk_pixmap_create_from_xpm            (GdkWindow    *window,
						  GdkBitmap   **mask,
						  GdkColor     *transparent_color,
						  const gchar  *filename);
GdkPixmap* gdk_pixmap_colormap_create_from_xpm   (GdkWindow    *window,
						  GdkColormap  *colormap,
						  GdkBitmap   **mask,
						  GdkColor     *transparent_color,
						  const gchar  *filename);
GdkPixmap* gdk_pixmap_create_from_xpm_d          (GdkWindow    *window,
						  GdkBitmap   **mask,
						  GdkColor     *transparent_color,
						  gchar       **data);
GdkPixmap* gdk_pixmap_colormap_create_from_xpm_d (GdkWindow    *window,
						  GdkColormap  *colormap,
						  GdkBitmap   **mask,
						  GdkColor     *transparent_color,
						  gchar       **data);
Owen Taylor's avatar
Started  
Owen Taylor committed
75

76 77 78 79 80
GdkScreen *gdk_pixmap_get_screen (GdkDrawable *drawable);

/* Functions to create/lookup pixmaps from their native equivalents
 */
#ifndef GDK_MULTIHEAD_SAFE
81 82
GdkPixmap*    gdk_pixmap_foreign_new (GdkNativeWindow anid);
GdkPixmap*    gdk_pixmap_lookup      (GdkNativeWindow anid);
83 84 85 86 87 88
#endif /* GDK_MULTIHEAD_SAFE */

GdkPixmap*    gdk_pixmap_foreign_new_for_screen (GdkScreen       *screen,
						 GdkNativeWindow  anid);
GdkPixmap*    gdk_pixmap_lookup_for_display     (GdkDisplay      *display,
						 GdkNativeWindow  anid);
89

90 91 92 93 94 95 96
#ifndef GDK_DISABLE_DEPRECATED
#define gdk_bitmap_ref                 gdk_drawable_ref
#define gdk_bitmap_unref               gdk_drawable_unref
#define gdk_pixmap_ref                 gdk_drawable_ref
#define gdk_pixmap_unref               gdk_drawable_unref
#endif /* GDK_DISABLE_DEPRECATED */

Owen Taylor's avatar
Started  
Owen Taylor committed
97 98 99 100 101
#ifdef __cplusplus
}
#endif /* __cplusplus */

#endif /* __GDK_PIXMAP_H__ */