il: remove ilxpm(P).h
This commit is contained in:
@@ -1,251 +0,0 @@
|
||||
/*
|
||||
* CDE - Common Desktop Environment
|
||||
*
|
||||
* Copyright (c) 1993-2012, The Open Group. All rights reserved.
|
||||
*
|
||||
* These libraries and programs are free software; you can
|
||||
* redistribute them and/or modify them under the terms of the GNU
|
||||
* Lesser General Public License as published by the Free Software
|
||||
* Foundation; either version 2 of the License, or (at your option)
|
||||
* any later version.
|
||||
*
|
||||
* These libraries and programs are distributed in the hope that
|
||||
* they will be useful, but WITHOUT ANY WARRANTY; without even the
|
||||
* implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
* PURPOSE. See the GNU Lesser General Public License for more
|
||||
* details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with these libraries and programs; if not, write
|
||||
* to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
|
||||
* Floor, Boston, MA 02110-1301 USA
|
||||
*/
|
||||
/* $XConsortium: ilxpm.h /main/4 1995/10/23 16:03:21 rswiston $ */
|
||||
/* Copyright 1990,91 GROUPE BULL -- See licence conditions in file COPYRIGHT */
|
||||
/*****************************************************************************\
|
||||
* xpm.h: *
|
||||
* *
|
||||
* XPM library *
|
||||
* Include file *
|
||||
* *
|
||||
* Developed by Arnaud Le Hors *
|
||||
\*****************************************************************************/
|
||||
|
||||
#ifndef XPM_h
|
||||
#define XPM_h
|
||||
|
||||
|
||||
#ifdef VMS
|
||||
/*
|
||||
#include "decw$include:Xlib.h"
|
||||
#include "decw$include:Intrinsic.h"
|
||||
*/
|
||||
#include "sys$library:stdio.h"
|
||||
#else
|
||||
/*
|
||||
#include <X11/Xlib.h>
|
||||
#include <X11/Intrinsic.h>
|
||||
*/
|
||||
#include <stdio.h>
|
||||
#endif
|
||||
|
||||
|
||||
/* we keep the same codes as for Bitmap management */
|
||||
/*
|
||||
#ifndef _XUTIL_H_
|
||||
#ifdef VMS
|
||||
#include "decw$include:Xutil.h"
|
||||
#else
|
||||
#include <X11/Xutil.h>
|
||||
#endif
|
||||
#endif
|
||||
*/
|
||||
/* Return ErrorStatus codes:
|
||||
* null if full success
|
||||
* positive if partial success
|
||||
* negative if failure
|
||||
*/
|
||||
|
||||
#define XpmColorError 1
|
||||
#define XpmSuccess 0
|
||||
#define XpmOpenFailed -1
|
||||
#define XpmFileInvalid -2
|
||||
#define XpmNoMemory -3
|
||||
#define XpmColorFailed -4
|
||||
|
||||
|
||||
typedef struct {
|
||||
char *name; /* Symbolic color name */
|
||||
char *value; /* Color value */
|
||||
/* Pixel pixel; /* Color pixel */
|
||||
} XpmColorSymbol;
|
||||
|
||||
typedef struct {
|
||||
unsigned long valuemask; /* Specifies which attributes are
|
||||
* defined */
|
||||
|
||||
/* Visual *visual; /* Specifies the visual to use */
|
||||
/* Colormap colormap; /* Specifies the colormap to use */
|
||||
unsigned int depth; /* Specifies the depth */
|
||||
unsigned int width; /* Returns the width of the created
|
||||
* pixmap */
|
||||
unsigned int height; /* Returns the height of the created
|
||||
* pixmap */
|
||||
unsigned int x_hotspot; /* Returns the x hotspot's
|
||||
* coordinate */
|
||||
unsigned int y_hotspot; /* Returns the y hotspot's
|
||||
* coordinate */
|
||||
unsigned int cpp; /* Specifies the number of char per
|
||||
* pixel */
|
||||
/* Pixel *pixels; /* List of used color pixels */
|
||||
unsigned int npixels; /* Number of pixels */
|
||||
XpmColorSymbol *colorsymbols; /* Array of color symbols to
|
||||
* override */
|
||||
unsigned int numsymbols; /* Number of symbols */
|
||||
char *rgb_fname; /* RGB text file name */
|
||||
|
||||
/* Infos */
|
||||
unsigned int ncolors; /* Number of colors */
|
||||
char ***colorTable; /* Color table pointer */
|
||||
char *hints_cmt; /* Comment of the hints section */
|
||||
char *colors_cmt; /* Comment of the colors section */
|
||||
char *pixels_cmt; /* Comment of the pixels section */
|
||||
unsigned int mask_pixel; /* Transparent pixel's color table
|
||||
* index */
|
||||
|
||||
} XpmAttributes;
|
||||
|
||||
/* Xpm attribute value masks bits */
|
||||
#define XpmVisual (1L<<0)
|
||||
#define XpmColormap (1L<<1)
|
||||
#define XpmDepth (1L<<2)
|
||||
#define XpmSize (1L<<3) /* width & height */
|
||||
#define XpmHotspot (1L<<4) /* x_hotspot & y_hotspot */
|
||||
#define XpmCharsPerPixel (1L<<5)
|
||||
#define XpmColorSymbols (1L<<6)
|
||||
#define XpmRgbFilename (1L<<7)
|
||||
#define XpmInfos (1L<<8) /* all infos members */
|
||||
|
||||
#define XpmReturnPixels (1L<<9)
|
||||
#define XpmReturnInfos XpmInfos
|
||||
|
||||
/*
|
||||
* minimal portability layer between ansi and KR C
|
||||
*/
|
||||
|
||||
/* forward declaration of functions with prototypes */
|
||||
|
||||
#if defined(__STDC__) || defined(__cplusplus) || defined(c_plusplus)
|
||||
/* ANSI || C++ */
|
||||
#define FUNC(f, t, p) extern t f p
|
||||
#define LFUNC(f, t, p) static t f p
|
||||
#else /* K&R */
|
||||
#define FUNC(f, t, p) extern t f()
|
||||
#define LFUNC(f, t, p) static t f()
|
||||
#endif /* end of K&R */
|
||||
|
||||
|
||||
/*
|
||||
* functions declarations
|
||||
*/
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
FUNC(XpmCreatePixmapFromData, int, (Display * display,
|
||||
Drawable d,
|
||||
char **data,
|
||||
Pixmap * pixmap_return,
|
||||
Pixmap * shapemask_return,
|
||||
XpmAttributes * attributes));
|
||||
|
||||
FUNC(XpmCreateDataFromPixmap, int, (Display * display,
|
||||
char ***data_return,
|
||||
Pixmap pixmap,
|
||||
Pixmap shapemask,
|
||||
XpmAttributes * attributes));
|
||||
|
||||
FUNC(XpmReadFileToPixmap, int, (Display * display,
|
||||
Drawable d,
|
||||
char *filename,
|
||||
Pixmap * pixmap_return,
|
||||
Pixmap * shapemask_return,
|
||||
XpmAttributes * attributes));
|
||||
|
||||
FUNC(XpmWriteFileFromPixmap, int, (Display * display,
|
||||
char *filename,
|
||||
Pixmap pixmap,
|
||||
Pixmap shapemask,
|
||||
XpmAttributes * attributes));
|
||||
|
||||
FUNC(XpmCreateImageFromData, int, (Display * display,
|
||||
char **data,
|
||||
XImage ** image_return,
|
||||
XImage ** shapemask_return,
|
||||
XpmAttributes * attributes));
|
||||
|
||||
FUNC(XpmCreateDataFromImage, int, (Display * display,
|
||||
char ***data_return,
|
||||
XImage * image,
|
||||
XImage * shapeimage,
|
||||
XpmAttributes * attributes));
|
||||
|
||||
FUNC(XpmReadFileToImage, int, (Display * display,
|
||||
char *filename,
|
||||
XImage ** image_return,
|
||||
XImage ** shapeimage_return,
|
||||
XpmAttributes * attributes));
|
||||
|
||||
FUNC(XpmWriteFileFromImage, int, (Display * display,
|
||||
char *filename,
|
||||
XImage * image,
|
||||
XImage * shapeimage,
|
||||
XpmAttributes * attributes));
|
||||
*/
|
||||
|
||||
FUNC(XpmAttributesSize, int, ());
|
||||
FUNC(XpmFreeAttributes, int, (XpmAttributes * attributes));
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* for C++ V2.0 */
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
/* bakward compatibility */
|
||||
|
||||
/* for version 3.0c */
|
||||
#define XpmPixmapColorError XpmColorError
|
||||
#define XpmPixmapSuccess XpmSuccess
|
||||
#define XpmPixmapOpenFailed XpmOpenFailed
|
||||
#define XpmPixmapFileInvalid XpmFileInvalid
|
||||
#define XpmPixmapNoMemory XpmNoMemory
|
||||
#define XpmPixmapColorFailed XpmColorFailed
|
||||
|
||||
#define XpmReadPixmapFile(dpy, d, file, pix, mask, att) \
|
||||
XpmReadFileToPixmap(dpy, d, file, pix, mask, att)
|
||||
#define XpmWritePixmapFile(dpy, file, pix, mask, att) \
|
||||
XpmWriteFileFromPixmap(dpy, file, pix, mask, att)
|
||||
|
||||
/* for version 3.0b */
|
||||
#define PixmapColorError XpmColorError
|
||||
#define PixmapSuccess XpmSuccess
|
||||
#define PixmapOpenFailed XpmOpenFailed
|
||||
#define PixmapFileInvalid XpmFileInvalid
|
||||
#define PixmapNoMemory XpmNoMemory
|
||||
#define PixmapColorFailed XpmColorFailed
|
||||
|
||||
#define ColorSymbol XpmColorSymbol
|
||||
|
||||
#define XReadPixmapFile(dpy, d, file, pix, mask, att) \
|
||||
XpmReadFileToPixmap(dpy, d, file, pix, mask, att)
|
||||
#define XWritePixmapFile(dpy, file, pix, mask, att) \
|
||||
XpmWriteFileFromPixmap(dpy, file, pix, mask, att)
|
||||
#define XCreatePixmapFromData(dpy, d, data, pix, mask, att) \
|
||||
XpmCreatePixmapFromData(dpy, d, data, pix, mask, att)
|
||||
#define XCreateDataFromPixmap(dpy, data, pix, mask, att) \
|
||||
XpmCreateDataFromPixmap(dpy, data, pix, mask, att)
|
||||
|
||||
#endif
|
||||
@@ -1,269 +0,0 @@
|
||||
/*
|
||||
* CDE - Common Desktop Environment
|
||||
*
|
||||
* Copyright (c) 1993-2012, The Open Group. All rights reserved.
|
||||
*
|
||||
* These libraries and programs are free software; you can
|
||||
* redistribute them and/or modify them under the terms of the GNU
|
||||
* Lesser General Public License as published by the Free Software
|
||||
* Foundation; either version 2 of the License, or (at your option)
|
||||
* any later version.
|
||||
*
|
||||
* These libraries and programs are distributed in the hope that
|
||||
* they will be useful, but WITHOUT ANY WARRANTY; without even the
|
||||
* implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
* PURPOSE. See the GNU Lesser General Public License for more
|
||||
* details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with these libraries and programs; if not, write
|
||||
* to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
|
||||
* Floor, Boston, MA 02110-1301 USA
|
||||
*/
|
||||
/* $XConsortium: ilxpmP.h /main/4 1995/10/23 16:03:34 rswiston $ */
|
||||
/* Copyright 1990,91 GROUPE BULL -- See licence conditions in file COPYRIGHT */
|
||||
/*****************************************************************************\
|
||||
* xpmP.h: *
|
||||
* *
|
||||
* XPM library *
|
||||
* Private Include file *
|
||||
* *
|
||||
* Developed by Arnaud Le Hors *
|
||||
\*****************************************************************************/
|
||||
|
||||
#ifndef XPMP_h
|
||||
#define XPMP_h
|
||||
|
||||
#ifdef Debug
|
||||
/* memory leak control tool */
|
||||
#include <mnemosyne.h>
|
||||
#endif
|
||||
|
||||
/*
|
||||
#ifdef VMS
|
||||
#include "decw$include:Xlib.h"
|
||||
#include "decw$include:Intrinsic.h"
|
||||
#include "sys$library:stdio.h"
|
||||
#else
|
||||
#include <X11/Xlib.h>
|
||||
#include <X11/Intrinsic.h>
|
||||
#include <stdio.h>
|
||||
#endif
|
||||
*/
|
||||
|
||||
#include "ilxpm.h"
|
||||
#ifndef IL_H
|
||||
#include "il.h"
|
||||
#endif
|
||||
|
||||
/* we keep the same codes as for Bitmap management */
|
||||
/*
|
||||
#ifndef _XUTIL_H_
|
||||
#ifdef VMS
|
||||
#include "decw$include:Xutil.h"
|
||||
#else
|
||||
#include <X11/Xutil.h>
|
||||
#endif
|
||||
#endif
|
||||
*/
|
||||
|
||||
|
||||
typedef struct {
|
||||
unsigned int type;
|
||||
union {
|
||||
FILE *file;
|
||||
char **data;
|
||||
} stream;
|
||||
char *cptr;
|
||||
unsigned int line;
|
||||
int CommentLength;
|
||||
char Comment[BUFSIZ];
|
||||
char *Bcmt, *Ecmt, Bos, Eos;
|
||||
unsigned int InsideString; /* used during parsing: 0 or 1
|
||||
* whether we are inside or not */
|
||||
} xpmData;
|
||||
|
||||
#define XPMARRAY 0
|
||||
#define XPMFILE 1
|
||||
#define XPMPIPE 2
|
||||
|
||||
typedef unsigned char byte;
|
||||
|
||||
#define EOL '\n'
|
||||
#define TAB '\t'
|
||||
#define SPC ' '
|
||||
|
||||
typedef struct {
|
||||
char *type; /* key word */
|
||||
char *Bcmt; /* string begining comments */
|
||||
char *Ecmt; /* string ending comments */
|
||||
char Bos; /* character begining strings */
|
||||
char Eos; /* character ending strings */
|
||||
char *Strs; /* strings separator */
|
||||
char *Dec; /* data declaration string */
|
||||
char *Boa; /* string begining assignment */
|
||||
char *Eoa; /* string ending assignment */
|
||||
} xpmDataType;
|
||||
|
||||
extern xpmDataType xpmDataTypes[];
|
||||
|
||||
/*
|
||||
* rgb values and ascii names (from rgb text file) rgb values,
|
||||
* range of 0 -> 65535 color mnemonic of rgb value
|
||||
*/
|
||||
typedef struct {
|
||||
int r, g, b;
|
||||
char *name;
|
||||
} xpmRgbName;
|
||||
|
||||
/* Maximum number of rgb mnemonics allowed in rgb text file. */
|
||||
#define MAX_RGBNAMES 1024
|
||||
|
||||
extern char *xpmColorKeys[];
|
||||
|
||||
#define TRANSPARENT_COLOR "None" /* this must be a string! */
|
||||
|
||||
/* number of xpmColorKeys */
|
||||
#define NKEYS 5
|
||||
|
||||
/*
|
||||
* key numbers for visual type, they must fit along with the number key of
|
||||
* each corresponding element in xpmColorKeys[] defined in xpm.h
|
||||
*/
|
||||
#define MONO 2
|
||||
#define GRAY4 3
|
||||
#define GRAY 4
|
||||
#define COLOR 5
|
||||
|
||||
/* structure containing data related to an Xpm pixmap */
|
||||
typedef struct {
|
||||
char *name;
|
||||
unsigned int width;
|
||||
unsigned int height;
|
||||
unsigned int cpp;
|
||||
unsigned int ncolors;
|
||||
char ***colorTable;
|
||||
unsigned int *pixelindex;
|
||||
/* XColor *xcolors; */
|
||||
char **colorStrings;
|
||||
unsigned int mask_pixel; /* mask pixel's colorTable index */
|
||||
unsigned short *pPalette; /* color palette derived for xpm Image */
|
||||
short nPaletteColors; /* current entry count in palette */
|
||||
} xpmInternAttrib;
|
||||
|
||||
#define UNDEF_PIXEL 0x80000000
|
||||
|
||||
/* XPM private routines */
|
||||
|
||||
FUNC(xpmCreateImage, int, (ilObject object,
|
||||
xpmInternAttrib * attrib,
|
||||
ilClientImage * image_return,
|
||||
ilClientImage * shapeimage_return,
|
||||
XpmAttributes * attributes));
|
||||
|
||||
FUNC(xpmParseData, int, (xpmData * data,
|
||||
xpmInternAttrib * attrib_return,
|
||||
XpmAttributes * attributes));
|
||||
|
||||
/*
|
||||
FUNC(xpmScanImage, int, (Display * display,
|
||||
XImage * image,
|
||||
XImage * shapeimage,
|
||||
XpmAttributes * attributes,
|
||||
xpmInternAttrib * attrib));
|
||||
|
||||
FUNC(xpmVisualType, int, (Visual * visual));
|
||||
*/
|
||||
|
||||
FUNC(xpmFreeColorTable, int, (char ***colorTable, int ncolors));
|
||||
|
||||
FUNC(xpmInitInternAttrib, int, (xpmInternAttrib * coedata));
|
||||
|
||||
FUNC(xpmFreeInternAttrib, int, (xpmInternAttrib * coedata));
|
||||
|
||||
FUNC(xpmSetAttributes, int, (xpmInternAttrib * attrib,
|
||||
XpmAttributes * attributes));
|
||||
|
||||
FUNC(xpmGetAttributes, int, (XpmAttributes * attributes,
|
||||
xpmInternAttrib * attrib));
|
||||
|
||||
/* I/O utility */
|
||||
|
||||
FUNC(xpmNextString, int, (xpmData * mdata));
|
||||
FUNC(xpmNextUI, int, (xpmData * mdata, unsigned int *ui_return));
|
||||
FUNC(xpmGetC, int, (xpmData * mdata));
|
||||
FUNC(xpmUngetC, int, (int c, xpmData * mdata));
|
||||
FUNC(xpmNextWord, unsigned int, (xpmData * mdata, char *buf));
|
||||
FUNC(xpmGetCmt, int, (xpmData * mdata, char **cmt));
|
||||
FUNC(xpmReadFile, int, (char *filename, xpmData * mdata));
|
||||
FUNC(xpmWriteFile, int, (char *filename, xpmData * mdata));
|
||||
FUNC(xpmOpenArray, int, (char **data, xpmData * mdata));
|
||||
FUNC(XpmDataClose, int, (xpmData * mdata));
|
||||
|
||||
/* RGB utility */
|
||||
|
||||
/*
|
||||
FUNC(xpmReadRgbNames, int, (char *rgb_fname, xpmRgbName * rgbn));
|
||||
FUNC(xpmGetRgbName, char *, (xpmRgbName * rgbn, int rgbn_max,
|
||||
int red, int green, int blue));
|
||||
FUNC(xpmFreeRgbNames, void, (xpmRgbName * rgbn, int rgbn_max));
|
||||
|
||||
FUNC(xpm_xynormalizeimagebits, int, (unsigned char *bp,
|
||||
XImage * img));
|
||||
FUNC(xpm_znormalizeimagebits, int, (unsigned char *bp,
|
||||
XImage * img));
|
||||
*/
|
||||
/*
|
||||
* Macros
|
||||
*
|
||||
* The XYNORMALIZE macro determines whether XY format data requires
|
||||
* normalization and calls a routine to do so if needed. The logic in
|
||||
* this module is designed for LSBFirst byte and bit order, so
|
||||
* normalization is done as required to present the data in this order.
|
||||
*
|
||||
* The ZNORMALIZE macro performs byte and nibble order normalization if
|
||||
* required for Z format data.
|
||||
*
|
||||
* The XYINDEX macro computes the index to the starting byte (char) boundary
|
||||
* for a bitmap_unit containing a pixel with coordinates x and y for image
|
||||
* data in XY format.
|
||||
*
|
||||
* The ZINDEX* macros compute the index to the starting byte (char) boundary
|
||||
* for a pixel with coordinates x and y for image data in ZPixmap format.
|
||||
*
|
||||
*/
|
||||
|
||||
/*
|
||||
#define XYNORMALIZE(bp, img) \
|
||||
if ((img->byte_order == MSBFirst) || (img->bitmap_bit_order == MSBFirst)) \
|
||||
xpm_xynormalizeimagebits((unsigned char *)(bp), img)
|
||||
|
||||
#define ZNORMALIZE(bp, img) \
|
||||
if (img->byte_order == MSBFirst) \
|
||||
xpm_znormalizeimagebits((unsigned char *)(bp), img)
|
||||
|
||||
#define XYINDEX(x, y, img) \
|
||||
((y) * img->bytes_per_line) + \
|
||||
(((x) + img->xoffset) / img->bitmap_unit) * (img->bitmap_unit >> 3)
|
||||
|
||||
#define ZINDEX(x, y, img) ((y) * img->bytes_per_line) + \
|
||||
(((x) * img->bits_per_pixel) >> 3)
|
||||
|
||||
#define ZINDEX32(x, y, img) ((y) * img->bytes_per_line) + ((x) << 2)
|
||||
|
||||
#define ZINDEX16(x, y, img) ((y) * img->bytes_per_line) + ((x) << 1)
|
||||
|
||||
#define ZINDEX8(x, y, img) ((y) * img->bytes_per_line) + (x)
|
||||
|
||||
#define ZINDEX1(x, y, img) ((y) * img->bytes_per_line) + ((x) >> 3)
|
||||
|
||||
*/
|
||||
|
||||
|
||||
#if defined(__STDC__)
|
||||
#define Const const
|
||||
#else
|
||||
#define Const /**/
|
||||
#endif
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user