XpmCreatePixmap(3) | libXpm functions | XpmCreatePixmap(3) |
XpmCreatePixmap - create a pixmap
int XpmCreatePixmapFromData(Display *display, Drawable d, char **data, Pixmap *pixmap_return, Pixmap *shapemask_return, XpmAttributes *attributes);
int XpmCreatePixmapFromBuffer(Display *display, Drawable d, char *buffer, Pixmap *pixmap_return, Pixmap *shapemask_return, XpmAttributes *attributes);
int XpmCreatePixmapFromXpmImage(Display *display, Drawable d, XpmImage *image, Pixmap *pixmap_return, Pixmap *shapemask_return, XpmAttributes *attributes);
To create a Pixmap from an XPM data, use XpmCreatePixmapFromData(). The XpmCreatePixmapFromData() function creates X images using XpmCreateImageFromData(3) and thus returns the same errors. In addition on success it then creates the related pixmaps, using XPutImage(3), which are returned to pixmap_return and shapemask_return if not NULL, and finally destroys the created images using XDestroyImage(3). Do not forget to free the returned pixmaps, the colors, and possibly the data returned into the XpmAttributes structure when done.
To create a Pixmap from an XPM buffer, use XpmCreatePixmapFromBuffer(). The XpmCreatePixmapFromBuffer() function works the same way as XpmReadFileToPixmap(3), it just calls XpmCreateImageFromBuffer(3) instead of XpmReadFileToImage(3).
XpmCreatePixmapFromXpmImage() creates X images calling XpmCreateImageFromXpmImage(3) with the given XpmImage and XpmAttributes, then it creates the related pixmaps which are returned to pixmap_return and shapemask_return using XPutImage(3). Finally it destroys the X images with XDestroyImage(3). When finished the caller must free the pixmaps using XFreePixmap(3), the colors using XFreeColors(3) or the application equivalent function when the standard Xlib functions are not used, and possibly the data returned into the XpmAttributes using XpmFreeAttributes(3).
XpmCreateImageFromData(3), XpmCreateImageFromXpmImage(3), XpmFreeAttributes(3), XpmReadFileToPixmap(3)
libXpm 3.5.17 | X Version 11 |