#define COLOR_TABLE_SUPPORT 1
typedef struct x_bitmap_record Bitmap_Record;
-typedef XImage * XImagePtr;
-typedef XImagePtr XImagePtr_or_DC;
#define GET_PIXEL(ximg, x, y) XGetPixel(ximg, x, y)
#define NO_PIXMAP None
-#define PNG_BG_COLOR_SHIFT 0
#define RGB_PIXEL_COLOR unsigned long
#undef COLOR_TABLE_SUPPORT
typedef struct w32_bitmap_record Bitmap_Record;
-typedef XImage *XImagePtr;
-typedef HDC XImagePtr_or_DC;
#define GET_PIXEL(ximg, x, y) GetPixel(ximg, x, y)
#define NO_PIXMAP 0
-#define PNG_BG_COLOR_SHIFT 0
#define RGB_PIXEL_COLOR COLORREF
/* MAC_TODO : Color tables on Mac. */
#undef COLOR_TABLE_SUPPORT
-/* Mac equivalent of XImage. */
-typedef Pixmap XImagePtr;
#define ZPixmap 0 /* arbitrary */
typedef struct mac_bitmap_record Bitmap_Record;
-typedef XImagePtr XImagePtr_or_DC;
#define GET_PIXEL(ximg, x, y) XGetPixel(ximg, x, y)
#define NO_PIXMAP 0
-#define PNG_BG_COLOR_SHIFT 8
#define RGB_PIXEL_COLOR unsigned long
extern Lisp_Object QCwidth, QCheight, QCforeground, QCbackground, QCfile;
extern Lisp_Object QCdata, QCtype;
+extern Lisp_Object Qcenter;
Lisp_Object QCascent, QCmargin, QCrelief;
Lisp_Object QCconversion, QCcolor_symbols, QCheuristic_mask;
Lisp_Object QCindex, QCmatrix, QCcolor_adjustment, QCmask;
/* Other symbols. */
Lisp_Object Qlaplace, Qemboss, Qedge_detection, Qheuristic;
-Lisp_Object Qcenter;
/* Time in seconds after which images should be removed from the cache
if not displayed. */
/* Return the `background' field of IMG. If IMG doesn't have one yet,
it is guessed heuristically. If non-zero, XIMG is an existing
XImage object (or device context with the image selected on W32) to
- use for the heuristic. */
+ use for the heuristic. */
RGB_PIXEL_COLOR
image_background (img, f, ximg)
if (free_ximg)
Destroy_Image (ximg, prev);
-
+
img->background_valid = 1;
}
File Handling
***********************************************************************/
-static Lisp_Object x_find_image_file P_ ((Lisp_Object));
static unsigned char *slurp_file P_ ((char *, int *));
x-bitmap-file-path. Value is the full name of the file found, or
nil if not found. */
-static Lisp_Object
+Lisp_Object
x_find_image_file (file)
Lisp_Object file;
{
non_default_colors = 1;
}
- Create_Pixmap_From_Bitmap_Data (f, img, data,
+ Create_Pixmap_From_Bitmap_Data (f, img, data,
foreground, background,
non_default_colors);
xfree (data);
/* Assemble the pixel color. */
return pr | pg | pb;
}
-
+
for (p = ct_table[i]; p; p = p->next)
if (p->r == r && p->g == g && p->b == b)
break;
x_destroy_x_image (ximg);
/* X and W32 versions did it here, MAC version above. ++kfs
- img->width = width;
+ img->width = width;
img->height = height; */
UNGCPRO;
png_color_16 user_bg;
bzero (&user_bg, sizeof user_bg);
- user_bg.red = color.red >> PNG_BG_COLOR_SHIFT;
- user_bg.green = color.green >> PNG_BG_COLOR_SHIFT;
- user_bg.blue = color.blue >> PNG_BG_COLOR_SHIFT;
+ user_bg.red = color.red >> 8;
+ user_bg.green = color.green >> 8;
+ user_bg.blue = color.blue >> 8;
fn_png_set_background (png_ptr, &user_bg,
PNG_BACKGROUND_GAMMA_SCREEN, 0, 1.0);
x_query_color (f, &color);
bzero (&frame_background, sizeof frame_background);
- frame_background.red = color.red;
- frame_background.green = color.green;
- frame_background.blue = color.blue;
+ frame_background.red = color.red >> 8;
+ frame_background.green = color.green >> 8;
+ frame_background.blue = color.blue >> 8;
#endif /* HAVE_X_WINDOWS */
#ifdef HAVE_NTGUI
x_query_color (f, &color);
#endif
bzero (&frame_background, sizeof frame_background);
- frame_background.red = 256 * GetRValue (color);
- frame_background.green = 256 * GetGValue (color);
- frame_background.blue = 256 * GetBValue (color);
+ frame_background.red = GetRValue (color);
+ frame_background.green = GetGValue (color);
+ frame_background.blue = GetBValue (color);
#endif /* HAVE_NTGUI */
#ifdef MAC_OS
staticpro (&Qedge_detection);
Qheuristic = intern ("heuristic");
staticpro (&Qheuristic);
- Qcenter = intern ("center");
- staticpro (&Qcenter);
Qpostscript = intern ("postscript");
staticpro (&Qpostscript);