blob: 713ba8d7238af04608910d6c016fa26710ea878f [file] [log] [blame]
package org.eclipse.swt.internal.gtk;
/*
* Copyright (c) IBM Corp. 2000, 2001. All rights reserved.
*
* The contents of this file are made available under the terms
* of the GNU Lesser General Public License (LGPL) Version 2.1 that
* accompanies this distribution (lgpl-v21.txt). The LGPL is also
* available at http://www.gnu.org/licenses/lgpl.html. If the version
* of the LGPL at http://www.gnu.org is different to the version of
* the LGPL accompanying this distribution and there is any conflict
* between the two license versions, the terms of the LGPL accompanying
* this distribution shall govern.
*/
import org.eclipse.swt.internal.Library;
public class GDKPIXBUF extends OS {
/* GdkColorspace enumeration */
/* R/G/B additive color space */
public final static int GDK_COLORSPACE_RGB = 0;
/* GIF-like animation overlay modes for frames */
public final static int GDK_PIXBUF_FRAME_RETAIN = 0;
public final static int GDK_PIXBUF_FRAME_DISPOSE = 1;
public final static int GDK_PIXBUF_FRAME_REVERT = 2;
/* Alpha compositing mode */
public final static int GDK_PIXBUF_ALPHA_BILEVEL = 0;
public final static int GDK_PIXBUF_ALPHA_FULL = 1;
/* Interpolation modes */
public final static int GDK_INTERP_NEAREST = 0;
public final static int GDK_INTERP_TILES = 1;
public final static int GDK_INTERP_BILINEAR = 2;
public final static int GDK_INTERP_HYPER = 3;
/*
* NATIVES
*/
/* GdkPixbuf accessors */
/**
* Returns the colorspace of the pixbuf argument
*/
public static final native int gdk_pixbuf_get_colorspace (int pixbuf);
/**
* Returns the number of channels in the pixbuf argument
*/
public static final native int gdk_pixbuf_get_n_channels (int pixbuf);
/**
* Returns true if the pixbuf specified by the argument has an alpha channel
* (opacity information), and false otherwise.
*/
public static final native boolean gdk_pixbuf_get_has_alpha (int pixbuf);
/**
* Returns the number of bits per pixel in each channel.
* Normally 8.
*/
public static final native int gdk_pixbuf_get_bits_per_sample (int pixbuf);
/**
* Returns the address of the actual image data in the OS memory.
*/
public static final native int gdk_pixbuf_get_pixels (int pixbuf);
/**
* Returns the width of the pixbuf specified by the argument.
*/
public static final native int gdk_pixbuf_get_width (int pixbuf);
/**
* Returns the height of the pixbuf specified by the argument.
*/
public static final native int gdk_pixbuf_get_height (int pixbuf);
/**
* Returns the rowstride of the pixbuf specified by the argument.
*/
public static final native int gdk_pixbuf_get_rowstride (int pixbuf);
/* PIXBUF CREATION FROM DATA IN MEMORY */
/**
* Create a blank pixbuf with an optimal rowstride and a new buffer
*/
public static final native int gdk_pixbuf_new (
int colorspace,
boolean has_alpha,
int bits_per_sample,
int width,
int height);
public static final native int gdk_pixbuf_copy(int source);
public static final native int gdk_pixbuf_new_from_data (
byte[] data,
int colorspace,
boolean has_alpha,
int bits_per_sample,
int width,
int height,
int rowstride,
int destroy_fn,
int destroy_fn_data);
public static final native int gdk_pixbuf_new_from_xpm_data (int pdata);
/* PIXBUF CREATION - FILE LOADING */
public static final native int gdk_pixbuf_new_from_file (byte[] filename);
/* RENDERING TO A DRAWABLE */
public static final native void gdk_pixbuf_render_to_drawable_alpha (int pixbuf,
int drawable,
int src_x, int src_y,
int dest_x, int dest_y,
int width, int height,
int alpha_mode,
int alpha_threshold,
int dither,
int x_dither, int y_dither);
public static final native void gdk_pixbuf_render_to_drawable (int pixbuf,
int drawable,
int gc,
int src_x, int src_y,
int dest_x, int dest_y,
int width, int height,
int dither,
int x_dither, int y_dither);
/* SCALING */
public static final native void gdk_pixbuf_scale (
int src, int dest,
int dest_x,
int dest_y,
int dest_width,
int dest_height,
double offset_x,
double offset_y,
double scale_x,
double scale_y,
int interp_type);
public static final native void gdk_pixbuf_composite (
int src, int dest,
int dest_x,
int dest_y,
int dest_width,
int dest_height,
double offset_x,
double offset_y,
double scale_x,
double scale_y,
int interp_type,
int overall_alpha);
public static final native void gdk_pixbuf_composite_color (
int src,
int dest,
int dest_x,
int dest_y,
int dest_width,
int dest_height,
double offset_x,
double offset_y,
double scale_x,double scale_y,
int interp_type,
int overall_alpha,
int check_x,
int check_y,
int check_size,
int color1,
int color2);
public static final native int gdk_pixbuf_scale_simple (
int src,
int dest_width,
int dest_height,
int interp_type);
public static final native int gdk_pixbuf_composite_color_simple (
int src,int dest_width,
int dest_height,
int interp_type,
int overall_alpha,
int check_size,
int color1,
int color2);
public static final native int gdk_pixbuf_get_from_drawable (
int dest,
int src,
int cmap,
int src_x,
int src_y,
int dest_x,
int dest_y,
int width,
int height);
/* LOAD THE DLL */
static {
Library.loadLibrary ("swt-pixbuf");
}
}