fl_read_image() - not implemented for WIN32 or OSX yet.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2269 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
This commit is contained in:
parent
085eccc439
commit
d5541b5cd6
1
CHANGES
1
CHANGES
@ -1,6 +1,7 @@
|
||||
CHANGES IN FLTK 1.1.0rc3
|
||||
|
||||
- Documentation updates.
|
||||
- Added fl_read_image() function.
|
||||
- Fixed Fl_Valuator::format() so that the correct format
|
||||
type is used when step == 1.0.
|
||||
- Fl_Help_View didn't support the TT markup.
|
||||
|
@ -1,5 +1,5 @@
|
||||
//
|
||||
// "$Id: fl_draw.H,v 1.9.2.6.2.4 2002/01/01 15:11:28 easysw Exp $"
|
||||
// "$Id: fl_draw.H,v 1.9.2.6.2.5 2002/05/30 15:09:02 easysw Exp $"
|
||||
//
|
||||
// Portable drawing function header file for the Fast Light Tool Kit (FLTK).
|
||||
//
|
||||
@ -171,6 +171,8 @@ FL_EXPORT void fl_draw_image(Fl_Draw_Image_Cb, void*, int,int,int,int, int delta
|
||||
FL_EXPORT void fl_draw_image_mono(Fl_Draw_Image_Cb, void*, int,int,int,int, int delta=1);
|
||||
FL_EXPORT void fl_rectf(int x, int y, int w, int h, uchar r, uchar g, uchar b);
|
||||
|
||||
FL_EXPORT uchar *fl_read_image(uchar *p, int x,int y, int w, int h, int alpha=0);
|
||||
|
||||
// pixmaps:
|
||||
FL_EXPORT int fl_draw_pixmap(/*const*/ char* const* data, int x,int y,Fl_Color=FL_GRAY);
|
||||
FL_EXPORT int fl_measure_pixmap(/*const*/ char* const* data, int &w, int &h);
|
||||
@ -192,5 +194,5 @@ FL_EXPORT int fl_add_symbol(const char* name, void (*drawit)(Fl_Color), int scal
|
||||
#endif
|
||||
|
||||
//
|
||||
// End of "$Id: fl_draw.H,v 1.9.2.6.2.4 2002/01/01 15:11:28 easysw Exp $".
|
||||
// End of "$Id: fl_draw.H,v 1.9.2.6.2.5 2002/05/30 15:09:02 easysw Exp $".
|
||||
//
|
||||
|
@ -1,5 +1,5 @@
|
||||
#
|
||||
# "$Id: Makefile,v 1.18.2.14.2.43 2002/05/16 12:47:43 easysw Exp $"
|
||||
# "$Id: Makefile,v 1.18.2.14.2.44 2002/05/30 15:09:03 easysw Exp $"
|
||||
#
|
||||
# Library makefile for the Fast Light Tool Kit (FLTK).
|
||||
#
|
||||
@ -141,6 +141,7 @@ CPPFILES = \
|
||||
fl_overlay.cxx \
|
||||
fl_overlay_visual.cxx \
|
||||
fl_plastic.cxx \
|
||||
fl_read_image.cxx \
|
||||
fl_rect.cxx \
|
||||
fl_round_box.cxx \
|
||||
fl_rounded_box.cxx \
|
||||
@ -259,6 +260,7 @@ fl_color.o: fl_color_mac.cxx fl_color_win32.cxx
|
||||
fl_dnd.o: fl_dnd_mac.cxx fl_dnd_win32.cxx fl_dnd_x.cxx
|
||||
fl_draw_image.o: fl_draw_image_mac.cxx fl_draw_image_win32.cxx
|
||||
fl_font.o: fl_font_mac.cxx fl_font_x.cxx fl_font_xft.cxx fl_font_win32.cxx
|
||||
fl_read_image.o: fl_read_image_mac.cxx fl_read_image_win32.cxx
|
||||
fl_set_fonts.o: fl_set_fonts_mac.cxx fl_set_fonts_x.cxx \
|
||||
fl_set_fonts_xft.cxx fl_set_fonts_win32.cxx
|
||||
|
||||
@ -292,6 +294,9 @@ fl_overlay_visual.o: ../FL/mac.H ../FL/win32.H
|
||||
Fl_Overlay_Window.o: ../FL/mac.H ../FL/win32.H
|
||||
Fl_own_colormap.o: ../FL/mac.H ../FL/win32.H
|
||||
Fl_Pixmap.o: ../FL/mac.H ../FL/win32.H
|
||||
fl_read_image.o: ../FL/mac.H ../FL/win32.H
|
||||
fl_read_image_mac.o: ../FL/mac.H ../FL/win32.H
|
||||
fl_read_image_win32.o: ../FL/mac.H ../FL/win32.H
|
||||
fl_rect.o: ../FL/mac.H ../FL/win32.H
|
||||
fl_scroll_area.o: ../FL/mac.H ../FL/win32.H
|
||||
fl_set_font.o: ../FL/mac.H ../FL/win32.H
|
||||
@ -433,5 +438,5 @@ uninstall:
|
||||
|
||||
|
||||
#
|
||||
# End of "$Id: Makefile,v 1.18.2.14.2.43 2002/05/16 12:47:43 easysw Exp $".
|
||||
# End of "$Id: Makefile,v 1.18.2.14.2.44 2002/05/30 15:09:03 easysw Exp $".
|
||||
#
|
||||
|
397
src/fl_read_image.cxx
Normal file
397
src/fl_read_image.cxx
Normal file
@ -0,0 +1,397 @@
|
||||
//
|
||||
// "$Id: fl_read_image.cxx,v 1.1.2.1 2002/05/30 15:09:03 easysw Exp $"
|
||||
//
|
||||
// X11 image reading routines for the Fast Light Tool Kit (FLTK).
|
||||
//
|
||||
// Copyright 1998-2002 by Bill Spitzak and others.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or
|
||||
// modify it under the terms of the GNU Library General Public
|
||||
// License as published by the Free Software Foundation; either
|
||||
// version 2 of the License, or (at your option) any later version.
|
||||
//
|
||||
// This library is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
// Library General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Library General Public
|
||||
// License along with this library; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
|
||||
// USA.
|
||||
//
|
||||
// Please report all bugs and problems to "fltk-bugs@fltk.org".
|
||||
//
|
||||
|
||||
#include <FL/x.H>
|
||||
#include <FL/fl_draw.H>
|
||||
#include "flstring.h"
|
||||
|
||||
#ifdef DEBUG
|
||||
# include <stdio.h>
|
||||
#endif // DEBUG
|
||||
|
||||
#ifdef WIN32
|
||||
# include "fl_read_image_win32.cxx"
|
||||
#elif defined(__APPLE__)
|
||||
# include "fl_read_image_mac.cxx"
|
||||
#else
|
||||
# include <X11/Xutil.h>
|
||||
# ifdef __sgi
|
||||
# include <X11/extensions/readdisplay.h>
|
||||
# endif // __sgi
|
||||
|
||||
//
|
||||
// 'fl_read_image()' - Read an image from the current window.
|
||||
//
|
||||
|
||||
uchar * // O - Pixel buffer or NULL if failed
|
||||
fl_read_image(uchar *p, // I - Pixel buffer or NULL to allocate
|
||||
int X, // I - Left position
|
||||
int Y, // I - Top position
|
||||
int w, // I - Width of area to read
|
||||
int h, // I - Height of area to read
|
||||
int alpha) { // I - Alpha value for image (0 for none)
|
||||
XImage *image; // Captured image
|
||||
int i, maxindex; // Looping vars
|
||||
int x, y; // Current X & Y in image
|
||||
int d; // Depth of image
|
||||
unsigned char *line, // Array to hold image row
|
||||
*line_ptr; // Pointer to current line image
|
||||
unsigned char *pixel; // Current color value
|
||||
XColor colors[4096]; // Colors from the colormap...
|
||||
unsigned char cvals[4096][3]; // Color values from the colormap...
|
||||
unsigned index_mask,
|
||||
index_shift,
|
||||
red_mask,
|
||||
red_shift,
|
||||
green_mask,
|
||||
green_shift,
|
||||
blue_mask,
|
||||
blue_shift;
|
||||
|
||||
|
||||
//
|
||||
// Under X11 we have the option of the XGetImage() interface or SGI's
|
||||
// ReadDisplay extension which does all of the really hard work for
|
||||
// us...
|
||||
//
|
||||
|
||||
# ifdef __sgi
|
||||
if (XReadDisplayQueryExtension(fl_display, &i, &i)) {
|
||||
image = XReadDisplay(fl_display, fl_window, X, Y, w, h, 0, NULL);
|
||||
} else
|
||||
# else
|
||||
image = 0;
|
||||
# endif // __sgi
|
||||
|
||||
if (!image) {
|
||||
image = XGetImage(fl_display, fl_window, X, Y, w, h, AllPlanes, ZPixmap);
|
||||
}
|
||||
|
||||
if (!image) return 0;
|
||||
|
||||
#ifdef DEBUG
|
||||
printf("width = %d\n", image->width);
|
||||
printf("height = %d\n", image->height);
|
||||
printf("xoffset = %d\n", image->xoffset);
|
||||
printf("format = %d\n", image->format);
|
||||
printf("data = %p\n", image->data);
|
||||
printf("byte_order = %d\n", image->byte_order);
|
||||
printf("bitmap_unit = %d\n", image->bitmap_unit);
|
||||
printf("bitmap_bit_order = %d\n", image->bitmap_bit_order);
|
||||
printf("bitmap_pad = %d\n", image->bitmap_pad);
|
||||
printf("depth = %d\n", image->depth);
|
||||
printf("bytes_per_line = %d\n", image->bytes_per_line);
|
||||
printf("bits_per_pixel = %d\n", image->bits_per_pixel);
|
||||
printf("red_mask = %08x\n", image->red_mask);
|
||||
printf("green_mask = %08x\n", image->green_mask);
|
||||
printf("blue_mask = %08x\n", image->blue_mask);
|
||||
#endif // DEBUG
|
||||
|
||||
d = alpha ? 4 : 3;
|
||||
|
||||
// Allocate the image data array as needed...
|
||||
if (!p) p = new uchar[w * h * d];
|
||||
|
||||
// Initialize the default colors/alpha in the whole image...
|
||||
memset(p, alpha, w * h * d);
|
||||
|
||||
// Check if we have colormap image...
|
||||
if (image->red_mask == 0) {
|
||||
// Get the colormap entries for this window...
|
||||
maxindex = fl_visual->visual->map_entries;
|
||||
|
||||
for (i = 0; i < maxindex; i ++) colors[i].pixel = i;
|
||||
|
||||
XQueryColors(fl_display, fl_colormap, colors, maxindex);
|
||||
|
||||
for (i = 0; i < maxindex; i ++) {
|
||||
cvals[i][0] = colors[i].red >> 8;
|
||||
cvals[i][1] = colors[i].green >> 8;
|
||||
cvals[i][2] = colors[i].blue >> 8;
|
||||
}
|
||||
|
||||
// Read the pixels and output an RGB image...
|
||||
for (y = 0; y < image->height; y ++) {
|
||||
pixel = (unsigned char *)(image->data + y * image->bytes_per_line);
|
||||
line = p + y * w * d;
|
||||
|
||||
switch (image->bits_per_pixel) {
|
||||
case 1 :
|
||||
for (x = image->width, line_ptr = line, index_mask = 128;
|
||||
x > 0;
|
||||
x --, line_ptr += d) {
|
||||
if (*pixel & index_mask) {
|
||||
line_ptr[0] = cvals[1][0];
|
||||
line_ptr[1] = cvals[1][1];
|
||||
line_ptr[2] = cvals[1][2];
|
||||
} else {
|
||||
line_ptr[0] = cvals[0][0];
|
||||
line_ptr[1] = cvals[0][1];
|
||||
line_ptr[2] = cvals[0][2];
|
||||
}
|
||||
|
||||
if (index_mask > 1) {
|
||||
index_mask >>= 1;
|
||||
} else {
|
||||
index_mask = 128;
|
||||
pixel ++;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case 2 :
|
||||
for (x = image->width, line_ptr = line, index_shift = 6;
|
||||
x > 0;
|
||||
x --, line_ptr += d) {
|
||||
i = (*pixel >> index_shift) & 3;
|
||||
|
||||
line_ptr[0] = cvals[i][0];
|
||||
line_ptr[1] = cvals[i][1];
|
||||
line_ptr[2] = cvals[i][2];
|
||||
|
||||
if (index_shift > 0) {
|
||||
index_mask >>= 2;
|
||||
index_shift -= 2;
|
||||
} else {
|
||||
index_mask = 192;
|
||||
index_shift = 6;
|
||||
pixel ++;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case 4 :
|
||||
for (x = image->width, line_ptr = line, index_shift = 4;
|
||||
x > 0;
|
||||
x --, line_ptr += d) {
|
||||
if (index_shift == 4) i = (*pixel >> 4) & 15;
|
||||
else i = *pixel & 15;
|
||||
|
||||
line_ptr[0] = cvals[i][0];
|
||||
line_ptr[1] = cvals[i][1];
|
||||
line_ptr[2] = cvals[i][2];
|
||||
|
||||
if (index_shift > 0) {
|
||||
index_shift = 0;
|
||||
} else {
|
||||
index_shift = 4;
|
||||
pixel ++;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case 8 :
|
||||
for (x = image->width, line_ptr = line;
|
||||
x > 0;
|
||||
x --, line_ptr += d, pixel ++) {
|
||||
line_ptr[0] = cvals[*pixel][0];
|
||||
line_ptr[1] = cvals[*pixel][1];
|
||||
line_ptr[2] = cvals[*pixel][2];
|
||||
}
|
||||
break;
|
||||
|
||||
case 12 :
|
||||
for (x = image->width, line_ptr = line, index_shift = 0;
|
||||
x > 0;
|
||||
x --, line_ptr += d) {
|
||||
if (index_shift == 0) {
|
||||
i = ((pixel[0] << 4) | (pixel[1] >> 4)) & 4095;
|
||||
} else {
|
||||
i = ((pixel[1] << 8) | pixel[2]) & 4095;
|
||||
}
|
||||
|
||||
line_ptr[0] = cvals[i][0];
|
||||
line_ptr[1] = cvals[i][1];
|
||||
line_ptr[2] = cvals[i][2];
|
||||
|
||||
if (index_shift == 0) {
|
||||
index_shift = 4;
|
||||
} else {
|
||||
index_shift = 0;
|
||||
pixel += 3;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// RGB(A) image, so figure out the shifts & masks...
|
||||
red_mask = image->red_mask;
|
||||
red_shift = 0;
|
||||
|
||||
while ((red_mask & 1) == 0) {
|
||||
red_mask >>= 1;
|
||||
red_shift ++;
|
||||
}
|
||||
|
||||
green_mask = image->green_mask;
|
||||
green_shift = 0;
|
||||
|
||||
while ((green_mask & 1) == 0) {
|
||||
green_mask >>= 1;
|
||||
green_shift ++;
|
||||
}
|
||||
|
||||
blue_mask = image->blue_mask;
|
||||
blue_shift = 0;
|
||||
|
||||
while ((blue_mask & 1) == 0) {
|
||||
blue_mask >>= 1;
|
||||
blue_shift ++;
|
||||
}
|
||||
|
||||
// Read the pixels and output an RGB image...
|
||||
for (y = 0; y < image->height; y ++) {
|
||||
pixel = (unsigned char *)(image->data + y * image->bytes_per_line);
|
||||
line = p + y * w * d;
|
||||
|
||||
switch (image->bits_per_pixel) {
|
||||
case 8 :
|
||||
for (x = image->width, line_ptr = line;
|
||||
x > 0;
|
||||
x --, line_ptr += d, pixel ++) {
|
||||
i = *pixel;
|
||||
|
||||
line_ptr[0] = 255 * ((i >> red_shift) & red_mask) / red_mask;
|
||||
line_ptr[1] = 255 * ((i >> green_shift) & green_mask) / green_mask;
|
||||
line_ptr[2] = 255 * ((i >> blue_shift) & blue_mask) / blue_mask;
|
||||
}
|
||||
break;
|
||||
|
||||
case 12 :
|
||||
for (x = image->width, line_ptr = line, index_shift = 0;
|
||||
x > 0;
|
||||
x --, line_ptr += d) {
|
||||
if (index_shift == 0) {
|
||||
i = ((pixel[0] << 4) | (pixel[1] >> 4)) & 4095;
|
||||
} else {
|
||||
i = ((pixel[1] << 8) | pixel[2]) & 4095;
|
||||
}
|
||||
|
||||
line_ptr[0] = 255 * ((i >> red_shift) & red_mask) / red_mask;
|
||||
line_ptr[1] = 255 * ((i >> green_shift) & green_mask) / green_mask;
|
||||
line_ptr[2] = 255 * ((i >> blue_shift) & blue_mask) / blue_mask;
|
||||
|
||||
if (index_shift == 0) {
|
||||
index_shift = 4;
|
||||
} else {
|
||||
index_shift = 0;
|
||||
pixel += 3;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case 16 :
|
||||
if (image->byte_order == LSBFirst) {
|
||||
// Little-endian...
|
||||
for (x = image->width, line_ptr = line;
|
||||
x > 0;
|
||||
x --, line_ptr += d, pixel += 2) {
|
||||
i = (pixel[1] << 8) | pixel[0];
|
||||
|
||||
line_ptr[0] = 255 * ((i >> red_shift) & red_mask) / red_mask;
|
||||
line_ptr[1] = 255 * ((i >> green_shift) & green_mask) / green_mask;
|
||||
line_ptr[2] = 255 * ((i >> blue_shift) & blue_mask) / blue_mask;
|
||||
}
|
||||
} else {
|
||||
// Big-endian...
|
||||
for (x = image->width, line_ptr = line;
|
||||
x > 0;
|
||||
x --, line_ptr += d, pixel += 2) {
|
||||
i = (pixel[0] << 8) | pixel[1];
|
||||
|
||||
line_ptr[0] = 255 * ((i >> red_shift) & red_mask) / red_mask;
|
||||
line_ptr[1] = 255 * ((i >> green_shift) & green_mask) / green_mask;
|
||||
line_ptr[2] = 255 * ((i >> blue_shift) & blue_mask) / blue_mask;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case 24 :
|
||||
if (image->byte_order == LSBFirst) {
|
||||
// Little-endian...
|
||||
for (x = image->width, line_ptr = line;
|
||||
x > 0;
|
||||
x --, line_ptr += d, pixel += 3) {
|
||||
i = (((pixel[2] << 8) | pixel[1]) << 8) | pixel[0];
|
||||
|
||||
line_ptr[0] = 255 * ((i >> red_shift) & red_mask) / red_mask;
|
||||
line_ptr[1] = 255 * ((i >> green_shift) & green_mask) / green_mask;
|
||||
line_ptr[2] = 255 * ((i >> blue_shift) & blue_mask) / blue_mask;
|
||||
}
|
||||
} else {
|
||||
// Big-endian...
|
||||
for (x = image->width, line_ptr = line;
|
||||
x > 0;
|
||||
x --, line_ptr += d, pixel += 3) {
|
||||
i = (((pixel[0] << 8) | pixel[1]) << 8) | pixel[2];
|
||||
|
||||
line_ptr[0] = 255 * ((i >> red_shift) & red_mask) / red_mask;
|
||||
line_ptr[1] = 255 * ((i >> green_shift) & green_mask) / green_mask;
|
||||
line_ptr[2] = 255 * ((i >> blue_shift) & blue_mask) / blue_mask;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case 32 :
|
||||
if (image->byte_order == LSBFirst) {
|
||||
// Little-endian...
|
||||
for (x = image->width, line_ptr = line;
|
||||
x > 0;
|
||||
x --, line_ptr += d, pixel += 4) {
|
||||
i = (((((pixel[3] << 8) | pixel[2]) << 8) | pixel[1]) << 8) | pixel[0];
|
||||
|
||||
line_ptr[0] = 255 * ((i >> red_shift) & red_mask) / red_mask;
|
||||
line_ptr[1] = 255 * ((i >> green_shift) & green_mask) / green_mask;
|
||||
line_ptr[2] = 255 * ((i >> blue_shift) & blue_mask) / blue_mask;
|
||||
}
|
||||
} else {
|
||||
// Big-endian...
|
||||
for (x = image->width, line_ptr = line;
|
||||
x > 0;
|
||||
x --, line_ptr += d, pixel += 4) {
|
||||
i = (((((pixel[0] << 8) | pixel[1]) << 8) | pixel[2]) << 8) | pixel[3];
|
||||
|
||||
line_ptr[0] = 255 * ((i >> red_shift) & red_mask) / red_mask;
|
||||
line_ptr[1] = 255 * ((i >> green_shift) & green_mask) / green_mask;
|
||||
line_ptr[2] = 255 * ((i >> blue_shift) & blue_mask) / blue_mask;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Destroy the X image we've read and return the RGB(A) image...
|
||||
XDestroyImage(image);
|
||||
|
||||
return p;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
//
|
||||
// End of "$Id: fl_read_image.cxx,v 1.1.2.1 2002/05/30 15:09:03 easysw Exp $".
|
||||
//
|
43
src/fl_read_image_mac.cxx
Normal file
43
src/fl_read_image_mac.cxx
Normal file
@ -0,0 +1,43 @@
|
||||
//
|
||||
// "$Id: fl_read_image_mac.cxx,v 1.1.2.1 2002/05/30 15:09:03 easysw Exp $"
|
||||
//
|
||||
// WIN32 image reading routines for the Fast Light Tool Kit (FLTK).
|
||||
//
|
||||
// Copyright 1998-2002 by Bill Spitzak and others.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or
|
||||
// modify it under the terms of the GNU Library General Public
|
||||
// License as published by the Free Software Foundation; either
|
||||
// version 2 of the License, or (at your option) any later version.
|
||||
//
|
||||
// This library is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
// Library General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Library General Public
|
||||
// License along with this library; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
|
||||
// USA.
|
||||
//
|
||||
// Please report all bugs and problems to "fltk-bugs@fltk.org".
|
||||
//
|
||||
|
||||
//
|
||||
// 'fl_read_image()' - Read an image from the current window.
|
||||
//
|
||||
|
||||
uchar * // O - Pixel buffer or NULL if failed
|
||||
fl_read_image(uchar *p, // I - Pixel buffer or NULL to allocate
|
||||
int x, // I - Left position
|
||||
int y, // I - Top position
|
||||
int w, // I - Width of area to read
|
||||
int h, // I - Height of area to read
|
||||
int alpha) { // I - Alpha value for image (0 for none)
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// End of "$Id: fl_read_image_mac.cxx,v 1.1.2.1 2002/05/30 15:09:03 easysw Exp $".
|
||||
//
|
43
src/fl_read_image_win32.cxx
Normal file
43
src/fl_read_image_win32.cxx
Normal file
@ -0,0 +1,43 @@
|
||||
//
|
||||
// "$Id: fl_read_image_win32.cxx,v 1.1.2.1 2002/05/30 15:09:03 easysw Exp $"
|
||||
//
|
||||
// WIN32 image reading routines for the Fast Light Tool Kit (FLTK).
|
||||
//
|
||||
// Copyright 1998-2002 by Bill Spitzak and others.
|
||||
//
|
||||
// This library is free software; you can redistribute it and/or
|
||||
// modify it under the terms of the GNU Library General Public
|
||||
// License as published by the Free Software Foundation; either
|
||||
// version 2 of the License, or (at your option) any later version.
|
||||
//
|
||||
// This library is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
// Library General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Library General Public
|
||||
// License along with this library; if not, write to the Free Software
|
||||
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
|
||||
// USA.
|
||||
//
|
||||
// Please report all bugs and problems to "fltk-bugs@fltk.org".
|
||||
//
|
||||
|
||||
//
|
||||
// 'fl_read_image()' - Read an image from the current window.
|
||||
//
|
||||
|
||||
uchar * // O - Pixel buffer or NULL if failed
|
||||
fl_read_image(uchar *p, // I - Pixel buffer or NULL to allocate
|
||||
int x, // I - Left position
|
||||
int y, // I - Top position
|
||||
int w, // I - Width of area to read
|
||||
int h, // I - Height of area to read
|
||||
int alpha) { // I - Alpha value for image (0 for none)
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
//
|
||||
// End of "$Id: fl_read_image_win32.cxx,v 1.1.2.1 2002/05/30 15:09:03 easysw Exp $".
|
||||
//
|
@ -93,7 +93,7 @@ Fl_File_Chooser2.o: ../FL/Fl_File_Input.H ../FL/Fl_Input.H ../FL/Fl_Input_.H
|
||||
Fl_File_Chooser2.o: ../FL/Fl_Return_Button.H ../FL/Fl_Button.H
|
||||
Fl_File_Chooser2.o: ../FL/filename.H ../FL/x.H ../FL/Fl_Window.H flstring.h
|
||||
Fl_File_Chooser2.o: ../config.h
|
||||
Fl_File_Icon.o: ../config.h flstring.h ../FL/Fl_File_Icon.H ../FL/Fl.H
|
||||
Fl_File_Icon.o: flstring.h ../config.h ../FL/Fl_File_Icon.H ../FL/Fl.H
|
||||
Fl_File_Icon.o: ../FL/Enumerations.H ../FL/Fl_Export.H ../FL/Fl_Widget.H
|
||||
Fl_File_Icon.o: ../FL/fl_draw.H ../FL/filename.H
|
||||
Fl_File_Icon2.o: flstring.h ../config.h ../FL/math.h ../FL/Fl_File_Icon.H
|
||||
@ -106,7 +106,7 @@ Fl_File_Input.o: ../FL/Fl_File_Input.H ../FL/Fl_Input.H ../FL/Fl_Input_.H
|
||||
Fl_File_Input.o: ../FL/fl_draw.H flstring.h ../config.h
|
||||
Fl_GIF_Image.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
Fl_GIF_Image.o: ../FL/Fl_GIF_Image.H ../FL/Fl_Pixmap.H ../FL/Fl_Image.H
|
||||
Fl_GIF_Image.o: ../FL/x.H ../FL/Fl_Window.H ../config.h flstring.h
|
||||
Fl_GIF_Image.o: ../FL/x.H ../FL/Fl_Window.H flstring.h ../config.h
|
||||
Fl_Group.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
Fl_Group.o: ../FL/Fl_Group.H ../FL/Fl_Window.H ../FL/Fl_Group.H
|
||||
Fl_Group.o: ../FL/Fl_Widget.H ../FL/fl_draw.H
|
||||
@ -178,7 +178,7 @@ Fl_PNG_Image.o: ../FL/Enumerations.H ../FL/Fl_Export.H ../FL/Fl_Window.H
|
||||
Fl_PNG_Image.o: ../config.h
|
||||
Fl_PNM_Image.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
Fl_PNM_Image.o: ../FL/Fl_PNM_Image.H ../FL/Fl_Image.H ../FL/x.H
|
||||
Fl_PNM_Image.o: ../FL/Fl_Window.H ../config.h flstring.h
|
||||
Fl_PNM_Image.o: ../FL/Fl_Window.H flstring.h ../config.h
|
||||
Fl_Positioner.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
Fl_Positioner.o: ../FL/Fl_Positioner.H ../FL/Fl_Widget.H ../FL/fl_draw.H
|
||||
Fl_Preferences.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
@ -267,10 +267,10 @@ Fl_Wizard.o: ../FL/Fl_Wizard.H ../FL/Fl_Group.H ../FL/fl_draw.H
|
||||
Fl_Wizard.o: ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
Fl_XBM_Image.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
Fl_XBM_Image.o: ../FL/Fl_XBM_Image.H ../FL/Fl_Bitmap.H ../FL/Fl_Image.H
|
||||
Fl_XBM_Image.o: ../FL/x.H ../FL/Fl_Window.H ../config.h flstring.h
|
||||
Fl_XBM_Image.o: ../FL/x.H ../FL/Fl_Window.H flstring.h ../config.h
|
||||
Fl_XPM_Image.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
Fl_XPM_Image.o: ../FL/Fl_XPM_Image.H ../FL/Fl_Pixmap.H ../FL/Fl_Image.H
|
||||
Fl_XPM_Image.o: ../FL/x.H ../FL/Fl_Window.H ../config.h flstring.h
|
||||
Fl_XPM_Image.o: ../FL/x.H ../FL/Fl_Window.H flstring.h ../config.h
|
||||
Fl_abort.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H flstring.h
|
||||
Fl_abort.o: ../config.h
|
||||
Fl_add_idle.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
@ -295,14 +295,14 @@ Fl_own_colormap.o: ../config.h ../FL/Fl.H ../FL/Enumerations.H
|
||||
Fl_own_colormap.o: ../FL/Fl_Export.H ../FL/x.H ../FL/Fl_Window.H
|
||||
Fl_visual.o: ../config.h ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
Fl_visual.o: ../FL/x.H ../FL/Fl_Window.H
|
||||
Fl_x.o: ../config.h ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
Fl_x.o: ../FL/x.H ../FL/Fl_Window.H ../FL/Fl_Window.H ../FL/Fl_Group.H
|
||||
Fl_x.o: ../FL/Fl_Widget.H flstring.h
|
||||
Fl_x.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H ../FL/x.H
|
||||
Fl_x.o: ../FL/Fl_Window.H ../FL/Fl_Window.H ../FL/Fl_Group.H
|
||||
Fl_x.o: ../FL/Fl_Widget.H flstring.h ../config.h
|
||||
filename_absolute.o: ../FL/filename.H flstring.h ../config.h
|
||||
filename_expand.o: ../FL/filename.H flstring.h ../config.h
|
||||
filename_ext.o: ../FL/filename.H
|
||||
filename_isdir.o: flstring.h ../config.h ../FL/filename.H
|
||||
filename_list.o: ../config.h ../FL/filename.H flstring.h
|
||||
filename_list.o: ../FL/filename.H flstring.h ../config.h
|
||||
filename_match.o: ../FL/filename.H
|
||||
filename_setext.o: ../FL/filename.H flstring.h ../config.h
|
||||
fl_arc.o: ../FL/fl_draw.H ../FL/Enumerations.H ../FL/Fl_Export.H ../FL/math.h
|
||||
@ -334,9 +334,9 @@ fl_draw.o: ../config.h
|
||||
fl_draw_image.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
fl_draw_image.o: ../FL/fl_draw.H ../FL/x.H ../FL/Fl_Window.H Fl_XColor.H
|
||||
fl_draw_image.o: ../config.h ../FL/Enumerations.H flstring.h
|
||||
fl_draw_pixmap.o: ../config.h ../FL/Fl.H ../FL/Enumerations.H
|
||||
fl_draw_pixmap.o: ../FL/Fl_Export.H ../FL/fl_draw.H ../FL/x.H
|
||||
fl_draw_pixmap.o: ../FL/Fl_Window.H flstring.h
|
||||
fl_draw_pixmap.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
fl_draw_pixmap.o: ../FL/fl_draw.H ../FL/x.H ../FL/Fl_Window.H flstring.h
|
||||
fl_draw_pixmap.o: ../config.h
|
||||
fl_engraved_label.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
fl_engraved_label.o: ../FL/Fl_Widget.H ../FL/fl_draw.H
|
||||
fl_file_dir.o: flstring.h ../config.h ../FL/filename.H
|
||||
@ -349,9 +349,9 @@ fl_file_dir.o: ../FL/Fl_Scrollbar.H ../FL/Fl_Slider.H ../FL/Fl_Valuator.H
|
||||
fl_file_dir.o: ../FL/Fl_File_Icon.H ../FL/Fl.H ../FL/filename.H
|
||||
fl_file_dir.o: ../FL/Fl_File_Input.H ../FL/Fl_Input.H ../FL/Fl_Input_.H
|
||||
fl_file_dir.o: ../FL/Fl_Return_Button.H ../FL/Fl_Button.H
|
||||
fl_font.o: ../config.h ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
fl_font.o: ../FL/fl_draw.H ../FL/x.H ../FL/Fl_Window.H Fl_Font.H flstring.h
|
||||
fl_font.o: fl_font_x.cxx
|
||||
fl_font.o: flstring.h ../config.h ../FL/Fl.H ../FL/Enumerations.H
|
||||
fl_font.o: ../FL/Fl_Export.H ../FL/fl_draw.H ../FL/x.H ../FL/Fl_Window.H
|
||||
fl_font.o: Fl_Font.H fl_font_x.cxx
|
||||
fl_labeltype.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
fl_labeltype.o: ../FL/Fl_Widget.H ../FL/Fl_Group.H ../FL/fl_draw.H
|
||||
fl_labeltype.o: ../FL/Fl_Image.H ../FL/x.H ../FL/Fl_Window.H
|
||||
@ -365,16 +365,18 @@ fl_overlay.o: ../FL/Fl_Window.H ../FL/fl_draw.H
|
||||
fl_overlay_visual.o: ../config.h
|
||||
fl_plastic.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
fl_plastic.o: ../FL/fl_draw.H flstring.h ../config.h
|
||||
fl_read_image.o: ../FL/x.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
fl_read_image.o: ../FL/Fl_Window.H ../FL/fl_draw.H flstring.h ../config.h
|
||||
fl_rect.o: ../FL/Fl_Widget.H ../FL/fl_draw.H ../FL/Enumerations.H
|
||||
fl_rect.o: ../FL/Fl_Export.H ../FL/x.H ../FL/Fl_Window.H
|
||||
fl_round_box.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
fl_round_box.o: ../FL/fl_draw.H
|
||||
fl_rounded_box.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
fl_rounded_box.o: ../FL/fl_draw.H
|
||||
fl_set_font.o: ../config.h ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
fl_set_font.o: ../FL/x.H ../FL/Fl_Window.H Fl_Font.H flstring.h
|
||||
fl_set_fonts.o: ../config.h ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
fl_set_fonts.o: ../FL/x.H ../FL/Fl_Window.H Fl_Font.H flstring.h
|
||||
fl_set_font.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H ../FL/x.H
|
||||
fl_set_font.o: ../FL/Fl_Window.H flstring.h ../config.h Fl_Font.H
|
||||
fl_set_fonts.o: ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H ../FL/x.H
|
||||
fl_set_fonts.o: ../FL/Fl_Window.H Fl_Font.H flstring.h ../config.h
|
||||
fl_set_fonts.o: fl_set_fonts_x.cxx
|
||||
fl_scroll_area.o: ../FL/x.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
fl_scroll_area.o: ../FL/Fl_Window.H
|
||||
@ -396,12 +398,12 @@ Fl_Gl_Choice.o: ../FL/x.H ../FL/Fl_Window.H Fl_Gl_Choice.H
|
||||
Fl_Gl_Overlay.o: ../config.h ../FL/Fl.H ../FL/Enumerations.H
|
||||
Fl_Gl_Overlay.o: ../FL/Fl_Export.H ../FL/x.H ../FL/Fl_Window.H Fl_Gl_Choice.H
|
||||
Fl_Gl_Overlay.o: ../FL/Fl_Gl_Window.H
|
||||
Fl_Gl_Window.o: ../config.h ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
Fl_Gl_Window.o: ../FL/x.H ../FL/Fl_Window.H Fl_Gl_Choice.H
|
||||
Fl_Gl_Window.o: ../FL/Fl_Gl_Window.H flstring.h
|
||||
gl_draw.o: ../config.h ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
gl_draw.o: ../FL/gl.h ../FL/x.H ../FL/Fl_Window.H ../FL/fl_draw.H
|
||||
gl_draw.o: Fl_Gl_Choice.H Fl_Font.H flstring.h
|
||||
Fl_Gl_Window.o: flstring.h ../config.h ../FL/Fl.H ../FL/Enumerations.H
|
||||
Fl_Gl_Window.o: ../FL/Fl_Export.H ../FL/x.H ../FL/Fl_Window.H Fl_Gl_Choice.H
|
||||
Fl_Gl_Window.o: ../FL/Fl_Gl_Window.H
|
||||
gl_draw.o: flstring.h ../config.h ../FL/Fl.H ../FL/Enumerations.H
|
||||
gl_draw.o: ../FL/Fl_Export.H ../FL/gl.h ../FL/x.H ../FL/Fl_Window.H
|
||||
gl_draw.o: ../FL/fl_draw.H Fl_Gl_Choice.H Fl_Font.H
|
||||
gl_start.o: ../config.h ../FL/Fl.H ../FL/Enumerations.H ../FL/Fl_Export.H
|
||||
gl_start.o: ../FL/Fl_Window.H ../FL/Fl_Group.H ../FL/Fl_Widget.H ../FL/x.H
|
||||
gl_start.o: ../FL/Fl_Window.H ../FL/fl_draw.H Fl_Gl_Choice.H
|
||||
|
Loading…
Reference in New Issue
Block a user