Indent the remaining unindented files.

This commit is contained in:
Kim Woelders 2014-12-20 16:58:48 +01:00
parent e20587d7a7
commit ec1b4319b8
24 changed files with 1164 additions and 1157 deletions

View File

@ -47,16 +47,14 @@ typedef struct _imlib_color Imlib_Color;
typedef void *ImlibPolygon; typedef void *ImlibPolygon;
/* blending operations */ /* blending operations */
enum _imlib_operation enum _imlib_operation {
{
IMLIB_OP_COPY, IMLIB_OP_COPY,
IMLIB_OP_ADD, IMLIB_OP_ADD,
IMLIB_OP_SUBTRACT, IMLIB_OP_SUBTRACT,
IMLIB_OP_RESHADE IMLIB_OP_RESHADE
}; };
enum _imlib_text_direction enum _imlib_text_direction {
{
IMLIB_TEXT_TO_RIGHT = 0, IMLIB_TEXT_TO_RIGHT = 0,
IMLIB_TEXT_TO_LEFT = 1, IMLIB_TEXT_TO_LEFT = 1,
IMLIB_TEXT_TO_DOWN = 2, IMLIB_TEXT_TO_DOWN = 2,
@ -64,8 +62,7 @@ enum _imlib_text_direction
IMLIB_TEXT_TO_ANGLE = 4 IMLIB_TEXT_TO_ANGLE = 4
}; };
enum _imlib_load_error enum _imlib_load_error {
{
IMLIB_LOAD_ERROR_NONE, IMLIB_LOAD_ERROR_NONE,
IMLIB_LOAD_ERROR_FILE_DOES_NOT_EXIST, IMLIB_LOAD_ERROR_FILE_DOES_NOT_EXIST,
IMLIB_LOAD_ERROR_FILE_IS_DIRECTORY, IMLIB_LOAD_ERROR_FILE_IS_DIRECTORY,
@ -84,8 +81,7 @@ enum _imlib_load_error
}; };
/* Encodings known to Imlib2 (so far) */ /* Encodings known to Imlib2 (so far) */
enum _imlib_TTF_encoding enum _imlib_TTF_encoding {
{
IMLIB_TTF_ENCODING_ISO_8859_1, IMLIB_TTF_ENCODING_ISO_8859_1,
IMLIB_TTF_ENCODING_ISO_8859_2, IMLIB_TTF_ENCODING_ISO_8859_2,
IMLIB_TTF_ENCODING_ISO_8859_3, IMLIB_TTF_ENCODING_ISO_8859_3,
@ -98,13 +94,11 @@ typedef enum _imlib_load_error Imlib_Load_Error;
typedef enum _imlib_text_direction Imlib_Text_Direction; typedef enum _imlib_text_direction Imlib_Text_Direction;
typedef enum _imlib_TTF_encoding Imlib_TTF_Encoding; typedef enum _imlib_TTF_encoding Imlib_TTF_Encoding;
struct _imlib_border struct _imlib_border {
{
int left, right, top, bottom; int left, right, top, bottom;
}; };
struct _imlib_color struct _imlib_color {
{
int alpha, red, green, blue; int alpha, red, green, blue;
}; };
@ -112,12 +106,14 @@ struct _imlib_color
typedef int (*Imlib_Progress_Function) (Imlib_Image im, char percent, typedef int (*Imlib_Progress_Function) (Imlib_Image im, char percent,
int update_x, int update_y, int update_x, int update_y,
int update_w, int update_h); int update_w, int update_h);
typedef void (*Imlib_Data_Destructor_Function) (Imlib_Image im, void *data); typedef void (*Imlib_Data_Destructor_Function) (Imlib_Image im,
void *data);
/* *INDENT-OFF* */
#ifdef __cplusplus #ifdef __cplusplus
extern "C" extern "C" {
{
#endif #endif
/* *INDENT-ON* */
/* context handling */ /* context handling */
EAPI Imlib_Context imlib_context_new(void); EAPI Imlib_Context imlib_context_new(void);
@ -137,23 +133,31 @@ extern "C"
EAPI void imlib_context_set_mask(Pixmap mask); EAPI void imlib_context_set_mask(Pixmap mask);
#endif #endif
EAPI void imlib_context_set_dither_mask(char dither_mask); EAPI void imlib_context_set_dither_mask(char dither_mask);
EAPI void imlib_context_set_mask_alpha_threshold(int mask_alpha_threshold); EAPI void imlib_context_set_mask_alpha_threshold(int
mask_alpha_threshold);
EAPI void imlib_context_set_anti_alias(char anti_alias); EAPI void imlib_context_set_anti_alias(char anti_alias);
EAPI void imlib_context_set_dither(char dither); EAPI void imlib_context_set_dither(char dither);
EAPI void imlib_context_set_blend(char blend); EAPI void imlib_context_set_blend(char blend);
EAPI void imlib_context_set_color_modifier(Imlib_Color_Modifier color_modifier); EAPI void imlib_context_set_color_modifier(Imlib_Color_Modifier
color_modifier);
EAPI void imlib_context_set_operation(Imlib_Operation operation); EAPI void imlib_context_set_operation(Imlib_Operation operation);
EAPI void imlib_context_set_font(Imlib_Font font); EAPI void imlib_context_set_font(Imlib_Font font);
EAPI void imlib_context_set_direction(Imlib_Text_Direction direction); EAPI void imlib_context_set_direction(Imlib_Text_Direction direction);
EAPI void imlib_context_set_angle(double angle); EAPI void imlib_context_set_angle(double angle);
EAPI void imlib_context_set_color(int red, int green, int blue, int alpha); EAPI void imlib_context_set_color(int red, int green, int blue,
EAPI void imlib_context_set_color_hsva(float hue, float saturation, float value, int alpha); int alpha);
EAPI void imlib_context_set_color_hlsa(float hue, float lightness, float saturation, int alpha); EAPI void imlib_context_set_color_hsva(float hue, float saturation,
EAPI void imlib_context_set_color_cmya(int cyan, int magenta, int yellow, int alpha); float value, int alpha);
EAPI void imlib_context_set_color_range(Imlib_Color_Range color_range); EAPI void imlib_context_set_color_hlsa(float hue, float lightness,
float saturation, int alpha);
EAPI void imlib_context_set_color_cmya(int cyan, int magenta,
int yellow, int alpha);
EAPI void imlib_context_set_color_range(Imlib_Color_Range
color_range);
EAPI void imlib_context_set_progress_function(Imlib_Progress_Function EAPI void imlib_context_set_progress_function(Imlib_Progress_Function
progress_function); progress_function);
EAPI void imlib_context_set_progress_granularity(char progress_granularity); EAPI void imlib_context_set_progress_granularity(char
progress_granularity);
EAPI void imlib_context_set_image(Imlib_Image image); EAPI void imlib_context_set_image(Imlib_Image image);
EAPI void imlib_context_set_cliprect(int x, int y, int w, int h); EAPI void imlib_context_set_cliprect(int x, int y, int w, int h);
EAPI void imlib_context_set_TTF_encoding(Imlib_TTF_Encoding encoding); EAPI void imlib_context_set_TTF_encoding(Imlib_TTF_Encoding encoding);
@ -176,10 +180,14 @@ extern "C"
EAPI Imlib_Font imlib_context_get_font(void); EAPI Imlib_Font imlib_context_get_font(void);
EAPI double imlib_context_get_angle(void); EAPI double imlib_context_get_angle(void);
EAPI Imlib_Text_Direction imlib_context_get_direction(void); EAPI Imlib_Text_Direction imlib_context_get_direction(void);
EAPI void imlib_context_get_color(int *red, int *green, int *blue, int *alpha); EAPI void imlib_context_get_color(int *red, int *green, int *blue,
EAPI void imlib_context_get_color_hsva(float *hue, float *saturation, float *value, int *alpha); int *alpha);
EAPI void imlib_context_get_color_hlsa(float *hue, float *lightness, float *saturation, int *alpha); EAPI void imlib_context_get_color_hsva(float *hue, float *saturation,
EAPI void imlib_context_get_color_cmya(int *cyan, int *magenta, int *yellow, int *alpha); float *value, int *alpha);
EAPI void imlib_context_get_color_hlsa(float *hue, float *lightness,
float *saturation, int *alpha);
EAPI void imlib_context_get_color_cmya(int *cyan, int *magenta,
int *yellow, int *alpha);
EAPI Imlib_Color *imlib_context_get_imlib_color(void); EAPI Imlib_Color *imlib_context_get_imlib_color(void);
EAPI Imlib_Color_Range imlib_context_get_color_range(void); EAPI Imlib_Color_Range imlib_context_get_color_range(void);
EAPI Imlib_Progress_Function imlib_context_get_progress_function(void); EAPI Imlib_Progress_Function imlib_context_get_progress_function(void);
@ -193,6 +201,7 @@ extern "C"
EAPI int imlib_get_color_usage(void); EAPI int imlib_get_color_usage(void);
EAPI void imlib_set_color_usage(int max); EAPI void imlib_set_color_usage(int max);
EAPI void imlib_flush_loaders(void); EAPI void imlib_flush_loaders(void);
#ifndef X_DISPLAY_MISSING #ifndef X_DISPLAY_MISSING
EAPI int imlib_get_visual_depth(Display * display, Visual * visual); EAPI int imlib_get_visual_depth(Display * display, Visual * visual);
EAPI Visual *imlib_get_best_visual(Display * display, int screen, EAPI Visual *imlib_get_best_visual(Display * display, int screen,
@ -202,7 +211,8 @@ extern "C"
EAPI Imlib_Image imlib_load_image(const char *file); EAPI Imlib_Image imlib_load_image(const char *file);
EAPI Imlib_Image imlib_load_image_immediately(const char *file); EAPI Imlib_Image imlib_load_image_immediately(const char *file);
EAPI Imlib_Image imlib_load_image_without_cache(const char *file); EAPI Imlib_Image imlib_load_image_without_cache(const char *file);
EAPI Imlib_Image imlib_load_image_immediately_without_cache(const char *file); EAPI Imlib_Image imlib_load_image_immediately_without_cache(const char
*file);
EAPI Imlib_Image imlib_load_image_with_error_return(const char *file, EAPI Imlib_Image imlib_load_image_with_error_return(const char *file,
Imlib_Load_Error * Imlib_Load_Error *
error_return); error_return);
@ -226,68 +236,91 @@ extern "C"
EAPI void imlib_image_set_irrelevant_alpha(char irrelevant); EAPI void imlib_image_set_irrelevant_alpha(char irrelevant);
EAPI char *imlib_image_format(void); EAPI char *imlib_image_format(void);
EAPI void imlib_image_set_has_alpha(char has_alpha); EAPI void imlib_image_set_has_alpha(char has_alpha);
EAPI void imlib_image_query_pixel(int x, int y, Imlib_Color * color_return); EAPI void imlib_image_query_pixel(int x, int y,
EAPI void imlib_image_query_pixel_hsva(int x, int y, float *hue, float *saturation, float *value, int *alpha); Imlib_Color * color_return);
EAPI void imlib_image_query_pixel_hlsa(int x, int y, float *hue, float *lightness, float *saturation, int *alpha); EAPI void imlib_image_query_pixel_hsva(int x, int y, float *hue,
EAPI void imlib_image_query_pixel_cmya(int x, int y, int *cyan, int *magenta, int *yellow, int *alpha); float *saturation,
float *value, int *alpha);
EAPI void imlib_image_query_pixel_hlsa(int x, int y, float *hue,
float *lightness,
float *saturation, int *alpha);
EAPI void imlib_image_query_pixel_cmya(int x, int y, int *cyan,
int *magenta, int *yellow,
int *alpha);
/* rendering functions */ /* rendering functions */
#ifndef X_DISPLAY_MISSING #ifndef X_DISPLAY_MISSING
EAPI void imlib_render_pixmaps_for_whole_image(Pixmap * pixmap_return, EAPI void imlib_render_pixmaps_for_whole_image(Pixmap * pixmap_return,
Pixmap * mask_return); Pixmap * mask_return);
EAPI void imlib_render_pixmaps_for_whole_image_at_size(Pixmap * pixmap_return, EAPI void imlib_render_pixmaps_for_whole_image_at_size(Pixmap *
Pixmap * mask_return, pixmap_return,
int width, int height); Pixmap *
mask_return,
int width,
int height);
EAPI void imlib_free_pixmap_and_mask(Pixmap pixmap); EAPI void imlib_free_pixmap_and_mask(Pixmap pixmap);
EAPI void imlib_render_image_on_drawable(int x, int y); EAPI void imlib_render_image_on_drawable(int x, int y);
EAPI void imlib_render_image_on_drawable_at_size(int x, int y, int width, EAPI void imlib_render_image_on_drawable_at_size(int x, int y,
int width,
int height); int height);
EAPI void imlib_render_image_part_on_drawable_at_size(int source_x, EAPI void imlib_render_image_part_on_drawable_at_size(int source_x,
int source_y, int source_y,
int source_width, int
int source_height, int x, source_width, int
int y, int width, source_height,
int x, int y,
int width,
int height); int height);
EAPI DATA32 imlib_render_get_pixel_color(void); EAPI DATA32 imlib_render_get_pixel_color(void);
#endif #endif
EAPI void imlib_blend_image_onto_image(Imlib_Image source_image, EAPI void imlib_blend_image_onto_image(Imlib_Image source_image,
char merge_alpha, int source_x, char merge_alpha,
int source_y, int source_width, int source_x, int source_y,
int source_height, int destination_x, int source_width,
int destination_y, int destination_width, int source_height,
int destination_x,
int destination_y,
int destination_width,
int destination_height); int destination_height);
/* creation functions */ /* creation functions */
EAPI Imlib_Image imlib_create_image(int width, int height); EAPI Imlib_Image imlib_create_image(int width, int height);
EAPI Imlib_Image imlib_create_image_using_data(int width, int height, EAPI Imlib_Image imlib_create_image_using_data(int width, int height,
DATA32 * data); DATA32 * data);
EAPI Imlib_Image imlib_create_image_using_copied_data(int width, int height, EAPI Imlib_Image imlib_create_image_using_copied_data(int width,
int height,
DATA32 * data); DATA32 * data);
#ifndef X_DISPLAY_MISSING #ifndef X_DISPLAY_MISSING
EAPI Imlib_Image imlib_create_image_from_drawable(Pixmap mask, int x, int y, EAPI Imlib_Image imlib_create_image_from_drawable(Pixmap mask,
int x, int y,
int width, int height, int width, int height,
char need_to_grab_x); char need_to_grab_x);
EAPI Imlib_Image imlib_create_image_from_ximage(XImage *image, XImage *mask, int x, int y, EAPI Imlib_Image imlib_create_image_from_ximage(XImage * image,
XImage * mask,
int x, int y,
int width, int height, int width, int height,
char need_to_grab_x); char need_to_grab_x);
EAPI Imlib_Image imlib_create_scaled_image_from_drawable(Pixmap mask, EAPI Imlib_Image imlib_create_scaled_image_from_drawable(Pixmap mask,
int source_x, int source_x,
int source_y, int source_y,
int source_width, int source_width,
int source_height, int
int destination_width, source_height, int
int destination_height, destination_width, int
char need_to_grab_x, destination_height, char
char need_to_grab_x, char
get_mask_from_shape); get_mask_from_shape);
EAPI char imlib_copy_drawable_to_image(Pixmap mask, int x, int y, int width, EAPI char imlib_copy_drawable_to_image(Pixmap mask, int x, int y,
int height, int destination_x, int width, int height,
int destination_y, char need_to_grab_x); int destination_x,
int destination_y,
char need_to_grab_x);
#endif #endif
EAPI Imlib_Image imlib_clone_image(void); EAPI Imlib_Image imlib_clone_image(void);
EAPI Imlib_Image imlib_create_cropped_image(int x, int y, int width, EAPI Imlib_Image imlib_create_cropped_image(int x, int y, int width,
int height); int height);
EAPI Imlib_Image imlib_create_cropped_scaled_image(int source_x, int source_y, EAPI Imlib_Image imlib_create_cropped_scaled_image(int source_x,
int source_y,
int source_width, int source_width,
int source_height, int source_height,
int destination_width, int destination_width,
@ -295,23 +328,28 @@ extern "C"
/* imlib updates. lists of rectangles for storing required update draws */ /* imlib updates. lists of rectangles for storing required update draws */
EAPI Imlib_Updates imlib_updates_clone(Imlib_Updates updates); EAPI Imlib_Updates imlib_updates_clone(Imlib_Updates updates);
EAPI Imlib_Updates imlib_update_append_rect(Imlib_Updates updates, int x, int y, EAPI Imlib_Updates imlib_update_append_rect(Imlib_Updates updates,
int w, int h); int x, int y, int w, int h);
EAPI Imlib_Updates imlib_updates_merge(Imlib_Updates updates, int w, int h); EAPI Imlib_Updates imlib_updates_merge(Imlib_Updates updates, int w, int h);
EAPI Imlib_Updates imlib_updates_merge_for_rendering(Imlib_Updates updates, EAPI Imlib_Updates imlib_updates_merge_for_rendering(Imlib_Updates updates,
int w, int h); int w, int h);
EAPI void imlib_updates_free(Imlib_Updates updates); EAPI void imlib_updates_free(Imlib_Updates updates);
EAPI Imlib_Updates imlib_updates_get_next(Imlib_Updates updates); EAPI Imlib_Updates imlib_updates_get_next(Imlib_Updates updates);
EAPI void imlib_updates_get_coordinates(Imlib_Updates updates, int *x_return, EAPI void imlib_updates_get_coordinates(Imlib_Updates updates,
int *y_return, int *width_return, int *x_return,
int *y_return,
int *width_return,
int *height_return); int *height_return);
EAPI void imlib_updates_set_coordinates(Imlib_Updates updates, int x, int y, EAPI void imlib_updates_set_coordinates(Imlib_Updates updates,
int x, int y,
int width, int height); int width, int height);
EAPI void imlib_render_image_updates_on_drawable(Imlib_Updates updates, int x, EAPI void imlib_render_image_updates_on_drawable(Imlib_Updates
int y); updates,
int x, int y);
EAPI Imlib_Updates imlib_updates_init(void); EAPI Imlib_Updates imlib_updates_init(void);
EAPI Imlib_Updates imlib_updates_append_updates(Imlib_Updates updates, EAPI Imlib_Updates imlib_updates_append_updates(Imlib_Updates updates,
Imlib_Updates appended_updates); Imlib_Updates
appended_updates);
/* image modification */ /* image modification */
EAPI void imlib_image_flip_horizontal(void); EAPI void imlib_image_flip_horizontal(void);
@ -327,20 +365,26 @@ extern "C"
/* fonts and text */ /* fonts and text */
EAPI Imlib_Font imlib_load_font(const char *font_name); EAPI Imlib_Font imlib_load_font(const char *font_name);
EAPI void imlib_free_font(void); EAPI void imlib_free_font(void);
/* NB! The four functions below are deprecated. */ /* NB! The four functions below are deprecated. */
EAPI int imlib_insert_font_into_fallback_chain(Imlib_Font font, Imlib_Font fallback_font); EAPI int imlib_insert_font_into_fallback_chain(Imlib_Font font,
EAPI void imlib_remove_font_from_fallback_chain(Imlib_Font fallback_font); Imlib_Font
fallback_font);
EAPI void imlib_remove_font_from_fallback_chain(Imlib_Font
fallback_font);
EAPI Imlib_Font imlib_get_prev_font_in_fallback_chain(Imlib_Font fn); EAPI Imlib_Font imlib_get_prev_font_in_fallback_chain(Imlib_Font fn);
EAPI Imlib_Font imlib_get_next_font_in_fallback_chain(Imlib_Font fn); EAPI Imlib_Font imlib_get_next_font_in_fallback_chain(Imlib_Font fn);
/* NB! The four functions above are deprecated. */ /* NB! The four functions above are deprecated. */
EAPI void imlib_text_draw(int x, int y, const char *text); EAPI void imlib_text_draw(int x, int y, const char *text);
EAPI void imlib_text_draw_with_return_metrics(int x, int y, const char *text, EAPI void imlib_text_draw_with_return_metrics(int x, int y,
const char *text,
int *width_return, int *width_return,
int *height_return, int *height_return, int
int *horizontal_advance_return, *horizontal_advance_return, int
int *vertical_advance_return); *vertical_advance_return);
EAPI void imlib_get_text_size(const char *text, int *width_return, EAPI void imlib_get_text_size(const char *text,
int *height_return); int *width_return, int *height_return);
EAPI void imlib_get_text_advance(const char *text, EAPI void imlib_get_text_advance(const char *text,
int *horizontal_advance_return, int *horizontal_advance_return,
int *vertical_advance_return); int *vertical_advance_return);
@ -348,12 +392,14 @@ extern "C"
EAPI void imlib_add_path_to_font_path(const char *path); EAPI void imlib_add_path_to_font_path(const char *path);
EAPI void imlib_remove_path_from_font_path(const char *path); EAPI void imlib_remove_path_from_font_path(const char *path);
EAPI char **imlib_list_font_path(int *number_return); EAPI char **imlib_list_font_path(int *number_return);
EAPI int imlib_text_get_index_and_location(const char *text, int x, int y, EAPI int imlib_text_get_index_and_location(const char *text,
int x, int y,
int *char_x_return, int *char_x_return,
int *char_y_return, int *char_y_return,
int *char_width_return, int *char_width_return,
int *char_height_return); int *char_height_return);
EAPI void imlib_text_get_location_at_index(const char *text, int index, EAPI void imlib_text_get_location_at_index(const char *text,
int index,
int *char_x_return, int *char_x_return,
int *char_y_return, int *char_y_return,
int *char_width_return, int *char_width_return,
@ -372,8 +418,10 @@ extern "C"
EAPI Imlib_Color_Modifier imlib_create_color_modifier(void); EAPI Imlib_Color_Modifier imlib_create_color_modifier(void);
EAPI void imlib_free_color_modifier(void); EAPI void imlib_free_color_modifier(void);
EAPI void imlib_modify_color_modifier_gamma(double gamma_value); EAPI void imlib_modify_color_modifier_gamma(double gamma_value);
EAPI void imlib_modify_color_modifier_brightness(double brightness_value); EAPI void imlib_modify_color_modifier_brightness(double
EAPI void imlib_modify_color_modifier_contrast(double contrast_value); brightness_value);
EAPI void imlib_modify_color_modifier_contrast(double
contrast_value);
EAPI void imlib_set_color_modifier_tables(DATA8 * red_table, EAPI void imlib_set_color_modifier_tables(DATA8 * red_table,
DATA8 * green_table, DATA8 * green_table,
DATA8 * blue_table, DATA8 * blue_table,
@ -384,37 +432,45 @@ extern "C"
DATA8 * alpha_table); DATA8 * alpha_table);
EAPI void imlib_reset_color_modifier(void); EAPI void imlib_reset_color_modifier(void);
EAPI void imlib_apply_color_modifier(void); EAPI void imlib_apply_color_modifier(void);
EAPI void imlib_apply_color_modifier_to_rectangle(int x, int y, int width, EAPI void imlib_apply_color_modifier_to_rectangle(int x, int y,
int width,
int height); int height);
/* drawing on images */ /* drawing on images */
EAPI Imlib_Updates imlib_image_draw_pixel(int x, int y, char make_updates); EAPI Imlib_Updates imlib_image_draw_pixel(int x, int y, char make_updates);
EAPI Imlib_Updates imlib_image_draw_line(int x1, int y1, int x2, int y2, EAPI Imlib_Updates imlib_image_draw_line(int x1, int y1, int x2, int y2,
char make_updates); char make_updates);
EAPI void imlib_image_draw_rectangle(int x, int y, int width, int height); EAPI void imlib_image_draw_rectangle(int x, int y,
EAPI void imlib_image_fill_rectangle(int x, int y, int width, int height); int width, int height);
EAPI void imlib_image_copy_alpha_to_image(Imlib_Image image_source, int x, EAPI void imlib_image_fill_rectangle(int x, int y,
int y); int width, int height);
EAPI void imlib_image_copy_alpha_rectangle_to_image(Imlib_Image image_source, EAPI void imlib_image_copy_alpha_to_image(Imlib_Image image_source,
int x, int y, int width, int x, int y);
EAPI void imlib_image_copy_alpha_rectangle_to_image(Imlib_Image
image_source,
int x, int y,
int width,
int height, int height,
int destination_x, int destination_x,
int destination_y); int
destination_y);
EAPI void imlib_image_scroll_rect(int x, int y, int width, int height, EAPI void imlib_image_scroll_rect(int x, int y, int width, int height,
int delta_x, int delta_y); int delta_x, int delta_y);
EAPI void imlib_image_copy_rect(int x, int y, int width, int height, int new_x, EAPI void imlib_image_copy_rect(int x, int y, int width, int height,
int new_y); int new_x, int new_y);
/* polygons */ /* polygons */
EAPI ImlibPolygon imlib_polygon_new(void); EAPI ImlibPolygon imlib_polygon_new(void);
EAPI void imlib_polygon_free(ImlibPolygon poly); EAPI void imlib_polygon_free(ImlibPolygon poly);
EAPI void imlib_polygon_add_point(ImlibPolygon poly, int x, int y); EAPI void imlib_polygon_add_point(ImlibPolygon poly, int x, int y);
EAPI void imlib_image_draw_polygon(ImlibPolygon poly, unsigned char closed); EAPI void imlib_image_draw_polygon(ImlibPolygon poly,
unsigned char closed);
EAPI void imlib_image_fill_polygon(ImlibPolygon poly); EAPI void imlib_image_fill_polygon(ImlibPolygon poly);
EAPI void imlib_polygon_get_bounds(ImlibPolygon poly, int *px1, int *py1, EAPI void imlib_polygon_get_bounds(ImlibPolygon poly,
int *px1, int *py1,
int *px2, int *py2); int *px2, int *py2);
EAPI unsigned char imlib_polygon_contains_point(ImlibPolygon poly, int x, EAPI unsigned char imlib_polygon_contains_point(ImlibPolygon poly,
int y); int x, int y);
/* ellipses */ /* ellipses */
EAPI void imlib_image_draw_ellipse(int xc, int yc, int a, int b); EAPI void imlib_image_draw_ellipse(int xc, int yc, int a, int b);
@ -424,24 +480,32 @@ extern "C"
EAPI Imlib_Color_Range imlib_create_color_range(void); EAPI Imlib_Color_Range imlib_create_color_range(void);
EAPI void imlib_free_color_range(void); EAPI void imlib_free_color_range(void);
EAPI void imlib_add_color_to_color_range(int distance_away); EAPI void imlib_add_color_to_color_range(int distance_away);
EAPI void imlib_image_fill_color_range_rectangle(int x, int y, int width, EAPI void imlib_image_fill_color_range_rectangle(int x, int y,
int height, double angle); int width,
EAPI void imlib_image_fill_hsva_color_range_rectangle(int x, int y, int width, int height,
int height, double angle); double angle);
EAPI void imlib_image_fill_hsva_color_range_rectangle(int x, int y,
int width,
int height,
double
angle);
/* image data */ /* image data */
EAPI void imlib_image_attach_data_value(const char *key, void *data, int value, EAPI void imlib_image_attach_data_value(const char *key,
void *data, int value,
Imlib_Data_Destructor_Function Imlib_Data_Destructor_Function
destructor_function); destructor_function);
EAPI void *imlib_image_get_attached_data(const char *key); EAPI void *imlib_image_get_attached_data(const char *key);
EAPI int imlib_image_get_attached_value(const char *key); EAPI int imlib_image_get_attached_value(const char *key);
EAPI void imlib_image_remove_attached_data_value(const char *key); EAPI void imlib_image_remove_attached_data_value(const char *key);
EAPI void imlib_image_remove_and_free_attached_data_value(const char *key); EAPI void imlib_image_remove_and_free_attached_data_value(const char
*key);
/* saving */ /* saving */
EAPI void imlib_save_image(const char *filename); EAPI void imlib_save_image(const char *filename);
EAPI void imlib_save_image_with_error_return(const char *filename, EAPI void imlib_save_image_with_error_return(const char *filename,
Imlib_Load_Error * error_return); Imlib_Load_Error *
error_return);
/* FIXME: */ /* FIXME: */
/* need to add arbitrary rotation routines */ /* need to add arbitrary rotation routines */
@ -453,35 +517,49 @@ extern "C"
EAPI void imlib_rotate_image_from_buffer(double angle, EAPI void imlib_rotate_image_from_buffer(double angle,
Imlib_Image source_image); Imlib_Image source_image);
EAPI void imlib_blend_image_onto_image_at_angle(Imlib_Image source_image, EAPI void imlib_blend_image_onto_image_at_angle(Imlib_Image
char merge_alpha, int source_x, source_image,
int source_y, int source_width, char merge_alpha,
int source_x,
int source_y,
int source_width,
int source_height, int source_height,
int destination_x, int destination_x,
int destination_y, int angle_x, int destination_y,
int angle_x,
int angle_y); int angle_y);
EAPI void imlib_blend_image_onto_image_skewed(Imlib_Image source_image, EAPI void imlib_blend_image_onto_image_skewed(Imlib_Image
char merge_alpha, int source_x, source_image,
int source_y, int source_width, char merge_alpha,
int source_x,
int source_y,
int source_width,
int source_height, int source_height,
int destination_x, int destination_x,
int destination_y, int h_angle_x, int destination_y,
int h_angle_y, int v_angle_x, int h_angle_x,
int h_angle_y,
int v_angle_x,
int v_angle_y); int v_angle_y);
#ifndef X_DISPLAY_MISSING #ifndef X_DISPLAY_MISSING
EAPI void imlib_render_image_on_drawable_skewed(int source_x, int source_y, EAPI void imlib_render_image_on_drawable_skewed(int source_x,
int source_y,
int source_width, int source_width,
int source_height, int source_height,
int destination_x, int destination_x,
int destination_y, int destination_y,
int h_angle_x, int h_angle_y, int h_angle_x,
int v_angle_x, int v_angle_y); int h_angle_y,
EAPI void imlib_render_image_on_drawable_at_angle(int source_x, int source_y, int v_angle_x,
int v_angle_y);
EAPI void imlib_render_image_on_drawable_at_angle(int source_x,
int source_y,
int source_width, int source_width,
int source_height, int source_height,
int destination_x, int destination_x,
int destination_y, int destination_y,
int angle_x, int angle_y); int angle_x,
int angle_y);
#endif #endif
/* image filters */ /* image filters */
@ -490,13 +568,16 @@ extern "C"
EAPI void imlib_context_set_filter(Imlib_Filter filter); EAPI void imlib_context_set_filter(Imlib_Filter filter);
EAPI Imlib_Filter imlib_context_get_filter(void); EAPI Imlib_Filter imlib_context_get_filter(void);
EAPI void imlib_free_filter(void); EAPI void imlib_free_filter(void);
EAPI void imlib_filter_set(int xoff, int yoff, int a, int r, int g, int b); EAPI void imlib_filter_set(int xoff, int yoff,
EAPI void imlib_filter_set_alpha(int xoff, int yoff, int a, int r, int g, int a, int r, int g, int b);
int b); EAPI void imlib_filter_set_alpha(int xoff, int yoff,
EAPI void imlib_filter_set_red(int xoff, int yoff, int a, int r, int g, int b); int a, int r, int g, int b);
EAPI void imlib_filter_set_green(int xoff, int yoff, int a, int r, int g, EAPI void imlib_filter_set_red(int xoff, int yoff,
int b); int a, int r, int g, int b);
EAPI void imlib_filter_set_blue(int xoff, int yoff, int a, int r, int g, int b); EAPI void imlib_filter_set_green(int xoff, int yoff,
int a, int r, int g, int b);
EAPI void imlib_filter_set_blue(int xoff, int yoff,
int a, int r, int g, int b);
EAPI void imlib_filter_constants(int a, int r, int g, int b); EAPI void imlib_filter_constants(int a, int r, int g, int b);
EAPI void imlib_filter_divisors(int a, int r, int g, int b); EAPI void imlib_filter_divisors(int a, int r, int g, int b);
@ -505,8 +586,9 @@ extern "C"
EAPI void imlib_image_clear(void); EAPI void imlib_image_clear(void);
EAPI void imlib_image_clear_color(int r, int g, int b, int a); EAPI void imlib_image_clear_color(int r, int g, int b, int a);
/* *INDENT-OFF* */
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
/* *INDENT-ON* */
#endif #endif

View File

@ -376,8 +376,7 @@ RESHADE_COLOR_WITH_ALPHA(a1, R_VAL(dest), r1, R_VAL(dest)); \
RESHADE_COLOR_WITH_ALPHA(a1, G_VAL(dest), g1, G_VAL(dest)); \ RESHADE_COLOR_WITH_ALPHA(a1, G_VAL(dest), g1, G_VAL(dest)); \
RESHADE_COLOR_WITH_ALPHA(a1, B_VAL(dest), b1, B_VAL(dest)); RESHADE_COLOR_WITH_ALPHA(a1, B_VAL(dest), b1, B_VAL(dest));
enum _imlibop enum _imlibop {
{
OP_COPY, OP_COPY,
OP_ADD, OP_ADD,
OP_SUBTRACT, OP_SUBTRACT,
@ -386,319 +385,228 @@ enum _imlibop
typedef enum _imlibop ImlibOp; typedef enum _imlibop ImlibOp;
typedef void (*ImlibBlendFunction)(DATA32*, int, DATA32*, int, int, int, typedef void (*ImlibBlendFunction) (DATA32 *, int, DATA32 *, int, int,
ImlibColorModifier *); int, ImlibColorModifier *);
ImlibBlendFunction ImlibBlendFunction __imlib_GetBlendFunction(ImlibOp op, char merge_alpha,
__imlib_GetBlendFunction(ImlibOp op, char merge_alpha, char blend, char rgb_src, char blend, char rgb_src,
ImlibColorModifier * cm); ImlibColorModifier * cm);
void void __imlib_BlendImageToImage(ImlibImage * im_src,
__imlib_BlendImageToImage(ImlibImage *im_src, ImlibImage *im_dst, ImlibImage * im_dst, char aa,
char aa, char blend, char merge_alpha, char blend, char merge_alpha,
int ssx, int ssy, int ssw, int ssh, int ssx, int ssy,
int ddx, int ddy, int ddw, int ddh, int ssw, int ssh,
int ddx, int ddy,
int ddw, int ddh,
ImlibColorModifier * cm,
ImlibOp op, int clx, int cly,
int clw, int clh);
void __imlib_BlendRGBAToData(DATA32 * src, int src_w, int src_h,
DATA32 * dst, int dst_w, int dst_h,
int sx, int sy, int dx, int dy,
int w, int h,
char blend, char merge_alpha,
ImlibColorModifier * cm, ImlibOp op, ImlibColorModifier * cm, ImlibOp op,
int clx, int cly, int clw, int clh); char rgb_src);
void void __imlib_build_pow_lut(void);
__imlib_BlendRGBAToData(DATA32 *src, int src_w, int src_h, DATA32 *dst,
int dst_w, int dst_h, int sx, int sy, int dx, int dy,
int w, int h, char blend, char merge_alpha,
ImlibColorModifier *cm, ImlibOp op, char rgb_src);
void
__imlib_build_pow_lut(void);
/* *INDENT-OFF* */
#ifdef DO_MMX_ASM #ifdef DO_MMX_ASM
void void __imlib_mmx_blend_rgba_to_rgb(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_mmx_blend_rgba_to_rgb(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_mmx_blend_rgba_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_mmx_blend_rgba_to_rgba(DATA32 *src, int sw, DATA32 *dst, void __imlib_mmx_copy_rgba_to_rgb(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_mmx_copy_rgba_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_mmx_copy_rgba_to_rgb(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_mmx_copy_rgb_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_mmx_copy_rgba_to_rgba(DATA32 *src, int sw, DATA32 *dst, void __imlib_mmx_add_blend_rgba_to_rgb(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_mmx_add_blend_rgba_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_mmx_copy_rgb_to_rgba(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_mmx_add_copy_rgba_to_rgb(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_mmx_add_blend_rgba_to_rgb(DATA32 *src, int sw, DATA32 *dst, void __imlib_mmx_add_copy_rgba_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_mmx_add_copy_rgb_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_mmx_add_blend_rgba_to_rgba(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_mmx_subtract_blend_rgba_to_rgb(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_mmx_add_copy_rgba_to_rgb(DATA32 *src, int sw, DATA32 *dst, void __imlib_mmx_subtract_blend_rgba_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_mmx_subtract_copy_rgba_to_rgb(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_mmx_add_copy_rgba_to_rgba(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_mmx_subtract_copy_rgba_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_mmx_add_copy_rgb_to_rgba(DATA32 *src, int sw, DATA32 *dst, void __imlib_mmx_subtract_copy_rgb_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_mmx_reshade_blend_rgba_to_rgb(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_mmx_subtract_blend_rgba_to_rgb(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_mmx_reshade_blend_rgba_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_mmx_subtract_blend_rgba_to_rgba(DATA32 *src, int sw, DATA32 *dst, void __imlib_mmx_reshade_copy_rgba_to_rgb(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_mmx_reshade_copy_rgba_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_mmx_subtract_copy_rgba_to_rgb(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_mmx_reshade_copy_rgb_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_mmx_subtract_copy_rgba_to_rgba(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_mmx_subtract_copy_rgb_to_rgba(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_mmx_reshade_blend_rgba_to_rgb(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_mmx_reshade_blend_rgba_to_rgba(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_mmx_reshade_copy_rgba_to_rgb(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_mmx_reshade_copy_rgba_to_rgba(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_mmx_reshade_copy_rgb_to_rgba(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void void __imlib_mmx_blend_rgba_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_mmx_blend_rgba_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_mmx_blend_rgba_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_mmx_blend_rgba_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst, void __imlib_mmx_blend_rgb_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_mmx_blend_rgb_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_mmx_blend_rgb_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_mmx_copy_rgba_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_mmx_blend_rgb_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst, void __imlib_mmx_copy_rgba_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_mmx_copy_rgb_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_mmx_copy_rgba_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_mmx_add_blend_rgba_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_mmx_copy_rgba_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst, void __imlib_mmx_add_blend_rgba_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_mmx_add_blend_rgb_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_mmx_copy_rgb_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_mmx_add_blend_rgb_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_mmx_add_blend_rgba_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst, void __imlib_mmx_add_copy_rgba_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_mmx_add_copy_rgba_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_mmx_add_blend_rgba_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_mmx_add_copy_rgb_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_mmx_add_blend_rgb_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst, void __imlib_mmx_subtract_blend_rgba_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_mmx_subtract_blend_rgba_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_mmx_add_blend_rgb_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_mmx_subtract_blend_rgb_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_mmx_add_copy_rgba_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst, void __imlib_mmx_subtract_blend_rgb_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_mmx_subtract_copy_rgba_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_mmx_add_copy_rgba_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_mmx_subtract_copy_rgba_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_mmx_add_copy_rgb_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst, void __imlib_mmx_subtract_copy_rgb_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_mmx_reshade_blend_rgba_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_mmx_subtract_blend_rgba_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_mmx_reshade_blend_rgba_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_mmx_subtract_blend_rgba_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst, void __imlib_mmx_reshade_blend_rgb_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_mmx_reshade_blend_rgb_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_mmx_subtract_blend_rgb_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_mmx_reshade_copy_rgba_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_mmx_subtract_blend_rgb_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst, void __imlib_mmx_reshade_copy_rgba_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_mmx_reshade_copy_rgb_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_mmx_subtract_copy_rgba_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_mmx_subtract_copy_rgba_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_mmx_subtract_copy_rgb_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_mmx_reshade_blend_rgba_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_mmx_reshade_blend_rgba_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_mmx_reshade_blend_rgb_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_mmx_reshade_blend_rgb_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_mmx_reshade_copy_rgba_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_mmx_reshade_copy_rgba_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_mmx_reshade_copy_rgb_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
#elif DO_AMD64_ASM #elif DO_AMD64_ASM
void void __imlib_amd64_blend_rgba_to_rgb(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_amd64_blend_rgba_to_rgb(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_amd64_blend_rgba_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_amd64_blend_rgba_to_rgba(DATA32 *src, int sw, DATA32 *dst, void __imlib_amd64_copy_rgba_to_rgb(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_amd64_copy_rgba_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_amd64_copy_rgba_to_rgb(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_amd64_copy_rgb_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_amd64_copy_rgba_to_rgba(DATA32 *src, int sw, DATA32 *dst, void __imlib_amd64_add_blend_rgba_to_rgb(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_amd64_add_blend_rgba_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_amd64_copy_rgb_to_rgba(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_amd64_add_copy_rgba_to_rgb(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_amd64_add_blend_rgba_to_rgb(DATA32 *src, int sw, DATA32 *dst, void __imlib_amd64_add_copy_rgba_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_amd64_add_copy_rgb_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_amd64_add_blend_rgba_to_rgba(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_amd64_subtract_blend_rgba_to_rgb(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_amd64_add_copy_rgba_to_rgb(DATA32 *src, int sw, DATA32 *dst, void __imlib_amd64_subtract_blend_rgba_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_amd64_subtract_copy_rgba_to_rgb(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_amd64_add_copy_rgba_to_rgba(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_amd64_subtract_copy_rgba_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_amd64_add_copy_rgb_to_rgba(DATA32 *src, int sw, DATA32 *dst, void __imlib_amd64_subtract_copy_rgb_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_amd64_reshade_blend_rgba_to_rgb(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_amd64_subtract_blend_rgba_to_rgb(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_amd64_reshade_blend_rgba_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_amd64_subtract_blend_rgba_to_rgba(DATA32 *src, int sw, DATA32 *dst, void __imlib_amd64_reshade_copy_rgba_to_rgb(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_amd64_reshade_copy_rgba_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_amd64_subtract_copy_rgba_to_rgb(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_amd64_reshade_copy_rgb_to_rgba(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_amd64_subtract_copy_rgba_to_rgba(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_amd64_subtract_copy_rgb_to_rgba(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_amd64_reshade_blend_rgba_to_rgb(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_amd64_reshade_blend_rgba_to_rgba(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_amd64_reshade_copy_rgba_to_rgb(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_amd64_reshade_copy_rgba_to_rgba(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_amd64_reshade_copy_rgb_to_rgba(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void __imlib_amd64_blend_rgba_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_amd64_blend_rgba_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst, void __imlib_amd64_blend_rgba_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_amd64_blend_rgb_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_amd64_blend_rgba_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_amd64_blend_rgb_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_amd64_blend_rgb_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst, void __imlib_amd64_copy_rgba_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_amd64_copy_rgba_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_amd64_blend_rgb_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_amd64_copy_rgb_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_amd64_copy_rgba_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst, void __imlib_amd64_add_blend_rgba_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_amd64_add_blend_rgba_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_amd64_copy_rgba_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_amd64_add_blend_rgb_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_amd64_copy_rgb_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst, void __imlib_amd64_add_blend_rgb_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_amd64_add_copy_rgba_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_amd64_add_blend_rgba_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_amd64_add_copy_rgba_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_amd64_add_blend_rgba_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst, void __imlib_amd64_add_copy_rgb_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_amd64_subtract_blend_rgba_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_amd64_add_blend_rgb_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_amd64_subtract_blend_rgba_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_amd64_add_blend_rgb_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst, void __imlib_amd64_subtract_blend_rgb_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_amd64_subtract_blend_rgb_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_amd64_add_copy_rgba_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_amd64_subtract_copy_rgba_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_amd64_add_copy_rgba_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst, void __imlib_amd64_subtract_copy_rgba_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_amd64_subtract_copy_rgb_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_amd64_add_copy_rgb_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_amd64_reshade_blend_rgba_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_amd64_subtract_blend_rgba_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst, void __imlib_amd64_reshade_blend_rgba_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_amd64_reshade_blend_rgb_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_amd64_subtract_blend_rgba_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_amd64_reshade_blend_rgb_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_amd64_subtract_blend_rgb_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst, void __imlib_amd64_reshade_copy_rgba_to_rgb_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
int dw, int w, int h, ImlibColorModifier *cm); int w, int h, ImlibColorModifier * cm);
void void __imlib_amd64_reshade_copy_rgba_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
__imlib_amd64_subtract_blend_rgb_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst, int w, int h, ImlibColorModifier * cm);
int dw, int w, int h, ImlibColorModifier *cm); void __imlib_amd64_reshade_copy_rgb_to_rgba_cmod(DATA32 * src, int sw, DATA32 * dst, int dw,
void int w, int h, ImlibColorModifier * cm);
__imlib_amd64_subtract_copy_rgba_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_amd64_subtract_copy_rgba_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_amd64_subtract_copy_rgb_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_amd64_reshade_blend_rgba_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_amd64_reshade_blend_rgba_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_amd64_reshade_blend_rgb_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_amd64_reshade_blend_rgb_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_amd64_reshade_copy_rgba_to_rgb_cmod(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_amd64_reshade_copy_rgba_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
void
__imlib_amd64_reshade_copy_rgb_to_rgba_cmod(DATA32 *src, int sw, DATA32 *dst,
int dw, int w, int h, ImlibColorModifier *cm);
#endif #endif
/* *INDENT-ON* */
#endif #endif

View File

@ -3,9 +3,14 @@
#include "common.h" #include "common.h"
void __imlib_rgb_to_hsv(int r, int g, int b, float *hue, float *saturation, float *value); void __imlib_rgb_to_hsv(int r, int g, int b, float *hue,
void __imlib_hsv_to_rgb(float hue, float saturation, float value, int *r, int *g, int *b); float *saturation, float *value);
void __imlib_rgb_to_hls(int r, int g, int b, float *hue, float *lightness, float *saturation); void __imlib_hsv_to_rgb(float hue, float saturation, float value,
void __imlib_hls_to_rgb(float hue, float lightness, float saturation, int *r, int *g, int *b); int *r, int *g, int *b);
void __imlib_rgb_to_hls(int r, int g, int b, float *hue,
float *lightness, float *saturation);
void __imlib_hls_to_rgb(float hue, float lightness,
float saturation,
int *r, int *g, int *b);
#endif #endif

View File

@ -6,8 +6,7 @@
typedef struct _imlib_color_modifier ImlibColorModifier; typedef struct _imlib_color_modifier ImlibColorModifier;
struct _imlib_color_modifier struct _imlib_color_modifier {
{
DATA8 red_mapping[256]; DATA8 red_mapping[256];
DATA8 green_mapping[256]; DATA8 green_mapping[256];
DATA8 blue_mapping[256]; DATA8 blue_mapping[256];
@ -58,8 +57,6 @@ void __imlib_CmodGetTables(ImlibColorModifier *cm, DATA8 *r,
DATA8 * g, DATA8 * b, DATA8 * a); DATA8 * g, DATA8 * b, DATA8 * a);
void __imlib_CmodModBrightness(ImlibColorModifier * cm, void __imlib_CmodModBrightness(ImlibColorModifier * cm,
double v); double v);
void __imlib_CmodModContrast(ImlibColorModifier *cm, void __imlib_CmodModContrast(ImlibColorModifier * cm, double v);
double v); void __imlib_CmodModGamma(ImlibColorModifier * cm, double v);
void __imlib_CmodModGamma(ImlibColorModifier *cm,
double v);
#endif #endif

View File

@ -21,6 +21,7 @@
#ifdef DO_MMX_ASM #ifdef DO_MMX_ASM
int __imlib_get_cpuid(void); int __imlib_get_cpuid(void);
#define CPUID_MMX (1 << 23) #define CPUID_MMX (1 << 23)
#define CPUID_XMM (1 << 25) #define CPUID_XMM (1 << 25)
#endif #endif

View File

@ -4,8 +4,7 @@
#include "common.h" #include "common.h"
#include "script.h" #include "script.h"
struct imlib_filter_info struct imlib_filter_info {
{
char *name; char *name;
char *author; char *author;
char *description; char *description;
@ -16,8 +15,7 @@ struct imlib_filter_info
typedef struct _imlib_external_filter ImlibExternalFilter; typedef struct _imlib_external_filter ImlibExternalFilter;
typedef struct _imlib_external_filter *pImlibExternalFilter; typedef struct _imlib_external_filter *pImlibExternalFilter;
struct _imlib_external_filter struct _imlib_external_filter {
{
char *name; char *name;
char *author; char *author;
char *description; char *description;
@ -27,7 +25,8 @@ struct _imlib_external_filter
char **filters; char **filters;
void (*init_filter) (struct imlib_filter_info * info); void (*init_filter) (struct imlib_filter_info * info);
void (*deinit_filter) (void); void (*deinit_filter) (void);
void *(*exec_filter)( char *filter, void *im, pIFunctionParam params ); void *(*exec_filter) (char *filter, void *im,
pIFunctionParam params);
pImlibExternalFilter next; pImlibExternalFilter next;
}; };

View File

@ -7,39 +7,31 @@ typedef struct _imlib_filter ImlibFilter;
typedef struct _imlib_filter_color ImlibFilterColor; typedef struct _imlib_filter_color ImlibFilterColor;
typedef struct _imlib_filter_pixel ImlibFilterPixel; typedef struct _imlib_filter_pixel ImlibFilterPixel;
struct _imlib_filter_pixel struct _imlib_filter_pixel {
{
int xoff, yoff; int xoff, yoff;
int a, r, g, b; int a, r, g, b;
}; };
struct _imlib_filter_color struct _imlib_filter_color {
{
int size, entries; int size, entries;
int div, cons; int div, cons;
ImlibFilterPixel *pixels; ImlibFilterPixel *pixels;
}; };
struct _imlib_filter struct _imlib_filter {
{
ImlibFilterColor alpha, red, green, blue; ImlibFilterColor alpha, red, green, blue;
}; };
ImlibFilter * ImlibFilter *__imlib_CreateFilter(int size);
__imlib_CreateFilter(int size); void __imlib_FreeFilter(ImlibFilter * fil);
void void __imlib_FilterSet(ImlibFilterColor * fil, int x, int y,
__imlib_FreeFilter(ImlibFilter *fil);
void
__imlib_FilterSet(ImlibFilterColor *fil, int x, int y,
int a, int r, int g, int b); int a, int r, int g, int b);
void void __imlib_FilterSetColor(ImlibFilterColor * fil, int x, int y,
__imlib_FilterSetColor(ImlibFilterColor * fil, int x, int y,
int a, int r, int g, int b); int a, int r, int g, int b);
void void __imlib_FilterDivisors(ImlibFilter * fil,
__imlib_FilterDivisors(ImlibFilter *fil, int a, int r, int g, int b); int a, int r, int g, int b);
void void __imlib_FilterConstants(ImlibFilter * fil,
__imlib_FilterConstants(ImlibFilter *fil, int a, int r, int g, int b); int a, int r, int g, int b);
void void __imlib_FilterImage(ImlibImage * im, ImlibFilter * fil);
__imlib_FilterImage(ImlibImage *im, ImlibFilter *fil);
#endif #endif

View File

@ -13,37 +13,31 @@ typedef struct _Imlib_Object_List Imlib_Object_List;
typedef struct _Imlib_Hash Imlib_Hash; typedef struct _Imlib_Hash Imlib_Hash;
typedef struct _Imlib_Hash_El Imlib_Hash_El; typedef struct _Imlib_Hash_El Imlib_Hash_El;
struct _Imlib_Object_List struct _Imlib_Object_List {
{
Imlib_Object_List *next, *prev; Imlib_Object_List *next, *prev;
Imlib_Object_List *last; Imlib_Object_List *last;
}; };
struct _Imlib_Hash struct _Imlib_Hash {
{
int population; int population;
Imlib_Object_List *buckets[256]; Imlib_Object_List *buckets[256];
}; };
struct _Imlib_Hash_El struct _Imlib_Hash_El {
{
Imlib_Object_List _list_data; Imlib_Object_List _list_data;
char *key; char *key;
void *data; void *data;
}; };
struct _Imlib_Font struct _Imlib_Font {
{
Imlib_Object_List _list_data; Imlib_Object_List _list_data;
char *name; char *name;
char *file; char *file;
int size; int size;
struct struct {
{
FT_Face face; FT_Face face;
} } ft;
ft;
Imlib_Hash *glyphs; Imlib_Hash *glyphs;
@ -56,8 +50,7 @@ struct _Imlib_Font
struct _Imlib_Font *fallback_next; struct _Imlib_Font *fallback_next;
}; };
struct _Imlib_Font_Glyph struct _Imlib_Font_Glyph {
{
FT_Glyph glyph; FT_Glyph glyph;
FT_BitmapGlyph glyph_out; FT_BitmapGlyph glyph_out;
}; };
@ -80,7 +73,8 @@ char **__imlib_font_list_fonts(int *num_ret);
ImlibFont *__imlib_font_load_joined(const char *name); ImlibFont *__imlib_font_load_joined(const char *name);
void __imlib_font_free(ImlibFont * fn); void __imlib_font_free(ImlibFont * fn);
int __imlib_font_insert_into_fallback_chain_imp(ImlibFont * fn, int __imlib_font_insert_into_fallback_chain_imp(ImlibFont * fn,
ImlibFont * fallback); ImlibFont *
fallback);
void __imlib_font_remove_from_fallback_chain_imp(ImlibFont * fn); void __imlib_font_remove_from_fallback_chain_imp(ImlibFont * fn);
int __imlib_font_cache_get(void); int __imlib_font_cache_get(void);
void __imlib_font_cache_set(int size); void __imlib_font_cache_set(int size);
@ -89,7 +83,8 @@ void __imlib_font_modify_cache_by(ImlibFont * fn, int dir);
void __imlib_font_modify_cache_by(ImlibFont * fn, int dir); void __imlib_font_modify_cache_by(ImlibFont * fn, int dir);
void __imlib_font_flush_last(void); void __imlib_font_flush_last(void);
ImlibFont *__imlib_font_find(const char *name, int size); ImlibFont *__imlib_font_find(const char *name, int size);
ImlibFont *__imlib_font_find_glyph(ImlibFont * fn, int gl, unsigned int *ret_index); ImlibFont *__imlib_font_find_glyph(ImlibFont * fn, int gl,
unsigned int *ret_index);
void __imlib_font_query_size(ImlibFont * fn, const char *text, void __imlib_font_query_size(ImlibFont * fn, const char *text,
int *w, int *h); int *w, int *h);
@ -98,21 +93,22 @@ void __imlib_font_query_advance(ImlibFont * fn, const char *text,
int *h_adv, int *v_adv); int *h_adv, int *v_adv);
int __imlib_font_query_char_coords(ImlibFont * fn, int __imlib_font_query_char_coords(ImlibFont * fn,
const char *text, int pos, const char *text, int pos,
int *cx, int *cy, int *cw, int *cx, int *cy,
int *ch); int *cw, int *ch);
int __imlib_font_query_text_at_pos(ImlibFont * fn, int __imlib_font_query_text_at_pos(ImlibFont * fn,
const char *text, int x, int y, const char *text,
int *cx, int *cy, int *cw, int x, int y,
int *ch); int *cx, int *cy,
int *cw, int *ch);
Imlib_Font_Glyph *__imlib_font_cache_glyph_get(ImlibFont * fn, FT_UInt index); Imlib_Font_Glyph *__imlib_font_cache_glyph_get(ImlibFont * fn, FT_UInt index);
void __imlib_render_str(ImlibImage * im, ImlibFont * f, int drx, void __imlib_render_str(ImlibImage * im, ImlibFont * f,
int dry, const char *text, DATA8 r, int drx, int dry, const char *text,
DATA8 g, DATA8 b, DATA8 a, char dir, DATA8 r, DATA8 g, DATA8 b, DATA8 a,
double angle, int *retw, int *reth, char dir, double angle,
int blur, int *nextx, int *nexty, int *retw, int *reth, int blur,
ImlibOp op, int clx, int cly, int clw, int *nextx, int *nexty, ImlibOp op,
int clh); int clx, int cly, int clw, int clh);
void __imlib_font_draw(ImlibImage * dst, DATA32 col, void __imlib_font_draw(ImlibImage * dst, DATA32 col,
ImlibFont * fn, int x, int y, ImlibFont * fn, int x, int y,
const char *text, int *nextx, int *nexty, const char *text, int *nextx, int *nexty,
@ -128,6 +124,6 @@ void *__imlib_hash_find(Imlib_Hash * hash, const char *key);
void __imlib_hash_free(Imlib_Hash * hash); void __imlib_hash_free(Imlib_Hash * hash);
void __imlib_hash_foreach(Imlib_Hash * hash, void __imlib_hash_foreach(Imlib_Hash * hash,
int (*func) (Imlib_Hash * hash, int (*func) (Imlib_Hash * hash,
const char *key, void *data, const char *key,
void *fdata), void *data, void *fdata),
const void *fdata); const void *fdata);

View File

@ -6,25 +6,32 @@
typedef struct _imlib_range ImlibRange; typedef struct _imlib_range ImlibRange;
typedef struct _imlib_range_color ImlibRangeColor; typedef struct _imlib_range_color ImlibRangeColor;
struct _imlib_range_color struct _imlib_range_color {
{
DATA8 red, green, blue, alpha; DATA8 red, green, blue, alpha;
int distance; int distance;
ImlibRangeColor *next; ImlibRangeColor *next;
}; };
struct _imlib_range struct _imlib_range {
{
ImlibRangeColor *color; ImlibRangeColor *color;
}; };
ImlibRange *__imlib_CreateRange(void); ImlibRange *__imlib_CreateRange(void);
void __imlib_FreeRange(ImlibRange * rg); void __imlib_FreeRange(ImlibRange * rg);
void __imlib_AddRangeColor(ImlibRange *rg, DATA8 r, DATA8 g, DATA8 b, void __imlib_AddRangeColor(ImlibRange * rg, DATA8 r, DATA8 g,
DATA8 a, int dist); DATA8 b, DATA8 a, int dist);
DATA32 *__imlib_MapRange(ImlibRange * rg, int len); DATA32 *__imlib_MapRange(ImlibRange * rg, int len);
DATA32 *__imlib_MapHsvaRange(ImlibRange * rg, int len); DATA32 *__imlib_MapHsvaRange(ImlibRange * rg, int len);
void __imlib_DrawGradient(ImlibImage *im, int x, int y, int w, int h, ImlibRange *rg, double angle, ImlibOp op, int clx, int cly, int clw, int clh); void __imlib_DrawGradient(ImlibImage * im,
void __imlib_DrawHsvaGradient(ImlibImage *im, int x, int y, int w, int h, ImlibRange *rg, double angle, ImlibOp op, int clx, int cly, int clw, int clh); int x, int y, int w, int h,
ImlibRange * rg, double angle,
ImlibOp op,
int clx, int cly, int clw, int clh);
void __imlib_DrawHsvaGradient(ImlibImage * im,
int x, int y, int w, int h,
ImlibRange * rg, double angle,
ImlibOp op,
int clx, int cly,
int clw, int clh);
#endif #endif

View File

@ -11,6 +11,7 @@
#endif #endif
typedef struct _imlibimage ImlibImage; typedef struct _imlibimage ImlibImage;
#ifdef BUILD_X11 #ifdef BUILD_X11
typedef struct _imlibimagepixmap ImlibImagePixmap; typedef struct _imlibimagepixmap ImlibImagePixmap;
#endif #endif
@ -22,10 +23,10 @@ typedef enum _imlib_load_error ImlibLoadError;
typedef int (*ImlibProgressFunction) (ImlibImage * im, char percent, typedef int (*ImlibProgressFunction) (ImlibImage * im, char percent,
int update_x, int update_y, int update_x, int update_y,
int update_w, int update_h); int update_w, int update_h);
typedef void (*ImlibDataDestructorFunction)(ImlibImage *im, void *data); typedef void (*ImlibDataDestructorFunction) (ImlibImage * im,
void *data);
enum _iflags enum _iflags {
{
F_NONE = 0, F_NONE = 0,
F_HAS_ALPHA = (1 << 0), F_HAS_ALPHA = (1 << 0),
F_UNLOADED = (1 << 1), F_UNLOADED = (1 << 1),
@ -40,13 +41,11 @@ enum _iflags
typedef enum _iflags ImlibImageFlags; typedef enum _iflags ImlibImageFlags;
struct _imlibborder struct _imlibborder {
{
int left, right, top, bottom; int left, right, top, bottom;
}; };
struct _imlibimagetag struct _imlibimagetag {
{
char *key; char *key;
int val; int val;
void *data; void *data;
@ -54,8 +53,7 @@ struct _imlibimagetag
ImlibImageTag *next; ImlibImageTag *next;
}; };
struct _imlibimage struct _imlibimage {
{
char *file; char *file;
int w, h; int w, h;
DATA32 *data; DATA32 *data;
@ -72,8 +70,7 @@ struct _imlibimage
}; };
#ifdef BUILD_X11 #ifdef BUILD_X11
struct _imlibimagepixmap struct _imlibimagepixmap {
{
int w, h; int w, h;
Pixmap pixmap, mask; Pixmap pixmap, mask;
Display *display; Display *display;
@ -92,8 +89,7 @@ struct _imlibimagepixmap
}; };
#endif #endif
struct _imlibloader struct _imlibloader {
{
char *file; char *file;
int num_formats; int num_formats;
char **formats; char **formats;
@ -124,6 +120,7 @@ void __imlib_AddImageToCache(ImlibImage *im);
void __imlib_RemoveImageFromCache(ImlibImage * im); void __imlib_RemoveImageFromCache(ImlibImage * im);
int __imlib_CurrentCacheSize(void); int __imlib_CurrentCacheSize(void);
void __imlib_CleanupImageCache(void); void __imlib_CleanupImageCache(void);
#ifdef BUILD_X11 #ifdef BUILD_X11
ImlibImagePixmap *__imlib_ProduceImagePixmap(void); ImlibImagePixmap *__imlib_ProduceImagePixmap(void);
void __imlib_ConsumeImagePixmap(ImlibImagePixmap * ip); void __imlib_ConsumeImagePixmap(ImlibImagePixmap * ip);
@ -146,22 +143,28 @@ void __imlib_ConsumeLoader(ImlibLoader *l);
void __imlib_RescanLoaders(void); void __imlib_RescanLoaders(void);
void __imlib_RemoveAllLoaders(void); void __imlib_RemoveAllLoaders(void);
void __imlib_LoadAllLoaders(void); void __imlib_LoadAllLoaders(void);
ImlibLoader *__imlib_FindBestLoaderForFile(const char *file, int for_save); ImlibLoader *__imlib_FindBestLoaderForFile(const char *file,
ImlibLoader *__imlib_FindBestLoaderForFileFormat(const char *file, char *format, int for_save); int for_save);
ImlibLoader *__imlib_FindBestLoaderForFileFormat(const char *file,
char *format,
int for_save);
void __imlib_SetImageAlphaFlag(ImlibImage * im, char alpha); void __imlib_SetImageAlphaFlag(ImlibImage * im, char alpha);
ImlibImage *__imlib_CreateImage(int w, int h, DATA32 * data); ImlibImage *__imlib_CreateImage(int w, int h, DATA32 * data);
ImlibImage *__imlib_LoadImage(const char *file, ImlibImage *__imlib_LoadImage(const char *file,
ImlibProgressFunction progress, ImlibProgressFunction progress,
char progress_granularity, char immediate_load, char progress_granularity,
char dont_cache, ImlibLoadError *er); char immediate_load, char dont_cache,
ImlibLoadError * er);
#ifdef BUILD_X11 #ifdef BUILD_X11
ImlibImagePixmap *__imlib_FindImlibImagePixmapByID(Display * d, Pixmap p); ImlibImagePixmap *__imlib_FindImlibImagePixmapByID(Display * d, Pixmap p);
#endif #endif
void __imlib_FreeImage(ImlibImage * im); void __imlib_FreeImage(ImlibImage * im);
#ifdef BUILD_X11 #ifdef BUILD_X11
void __imlib_FreePixmap(Display * d, Pixmap p); void __imlib_FreePixmap(Display * d, Pixmap p);
#endif #endif
void __imlib_FlushCache(void); void __imlib_FlushCache(void);
#ifdef BUILD_X11 #ifdef BUILD_X11
void __imlib_DirtyPixmapsForImage(ImlibImage * im); void __imlib_DirtyPixmapsForImage(ImlibImage * im);
#else #else

View File

@ -16,9 +16,8 @@ typedef void (*ImlibRGBAFunction) (DATA32 *, int, DATA8 *,
int, int, int, int, int); int, int, int, int, int);
typedef void (*ImlibMaskFunction) (DATA32 *, int, DATA8 *, typedef void (*ImlibMaskFunction) (DATA32 *, int, DATA8 *,
int, int, int, int, int, int); int, int, int, int, int, int);
ImlibRGBAFunction ImlibRGBAFunction __imlib_GetRGBAFunction(int depth, unsigned long rm,
__imlib_GetRGBAFunction(int depth, unsigned long gm, unsigned long bm,
unsigned long rm, unsigned long gm, unsigned long bm,
char hiq, DATA8 palette_type); char hiq, DATA8 palette_type);
ImlibMaskFunction __imlib_GetMaskFunction(char hiq); ImlibMaskFunction __imlib_GetMaskFunction(char hiq);

View File

@ -37,26 +37,22 @@ do { \
#define MULT(na, a0, a1, tmp) \ #define MULT(na, a0, a1, tmp) \
DIV_255(na, (a0) * (a1), tmp) DIV_255(na, (a0) * (a1), tmp)
typedef struct _imlib_point ImlibPoint; typedef struct _imlib_point ImlibPoint;
struct _imlib_point struct _imlib_point {
{
int x, y; int x, y;
}; };
typedef struct _imlib_rectangle Imlib_Rectangle; typedef struct _imlib_rectangle Imlib_Rectangle;
struct _imlib_rectangle struct _imlib_rectangle {
{
int x, y, w, h; int x, y, w, h;
}; };
typedef struct _imlib_polygon _ImlibPoly; typedef struct _imlib_polygon _ImlibPoly;
typedef _ImlibPoly *ImlibPoly; typedef _ImlibPoly *ImlibPoly;
struct _imlib_polygon struct _imlib_polygon {
{
ImlibPoint *points; ImlibPoint *points;
int pointcount; int pointcount;
int lx, rx; int lx, rx;
@ -74,72 +70,83 @@ void __imlib_SharpenImage(ImlibImage * im, int rad);
void __imlib_TileImageHoriz(ImlibImage * im); void __imlib_TileImageHoriz(ImlibImage * im);
void __imlib_TileImageVert(ImlibImage * im); void __imlib_TileImageVert(ImlibImage * im);
void __imlib_copy_alpha_data(ImlibImage * src, ImlibImage * dst, int x, int y, void __imlib_copy_alpha_data(ImlibImage * src, ImlibImage * dst,
int w, int h, int nx, int ny); int x, int y, int w, int h,
void __imlib_copy_image_data(ImlibImage * im, int x, int y, int w, int h,
int nx, int ny); int nx, int ny);
void __imlib_copy_image_data(ImlibImage * im, int x, int y,
int w, int h, int nx, int ny);
/* point and line drawing: in line.c */ /* point and line drawing: in line.c */
ImlibUpdate * ImlibUpdate *__imlib_Point_DrawToImage(int x, int y, DATA32 color,
__imlib_Point_DrawToImage(int x, int y, DATA32 color, ImlibImage * im,
ImlibImage *im, int clx, int cly, int clw, int clh, int clx, int cly,
ImlibOp op, char blend, char make_updates); int clw, int clh,
ImlibOp op, char blend,
ImlibUpdate *
__imlib_Line_DrawToImage(int x0, int y0, int x1, int y1, DATA32 color,
ImlibImage *im, int clx, int cly, int clw, int clh,
ImlibOp op, char blend, char anti_alias,
char make_updates); char make_updates);
ImlibUpdate *__imlib_Line_DrawToImage(int x0, int y0, int x1, int y1,
DATA32 color, ImlibImage * im,
int clx, int cly, int clw, int clh,
ImlibOp op, char blend,
char anti_alias,
char make_updates);
/* rectangle drawing and filling: in rectangle.c */ /* rectangle drawing and filling: in rectangle.c */
void void __imlib_Rectangle_DrawToImage(int xc, int yc, int w, int h,
__imlib_Rectangle_DrawToImage(int xc, int yc, int w, int h, DATA32 color, DATA32 color, ImlibImage * im,
ImlibImage *im, int clx, int cly, int clw, int clh, int clx, int cly,
int clw, int clh,
ImlibOp op, char blend); ImlibOp op, char blend);
void void __imlib_Rectangle_FillToImage(int xc, int yc, int w, int h,
__imlib_Rectangle_FillToImage(int xc, int yc, int w, int h, DATA32 color, DATA32 color, ImlibImage * im,
ImlibImage *im, int clx, int cly, int clw, int clh, int clx, int cly,
int clw, int clh,
ImlibOp op, char blend); ImlibOp op, char blend);
/* ellipse drawing and filling: in ellipse.c */ /* ellipse drawing and filling: in ellipse.c */
void void __imlib_Ellipse_DrawToImage(int xc, int yc, int a, int b,
__imlib_Ellipse_DrawToImage(int xc, int yc, int a, int b, DATA32 color, DATA32 color, ImlibImage * im,
ImlibImage *im, int clx, int cly, int clw, int clh, int clx, int cly,
ImlibOp op, char blend, char anti_alias); int clw, int clh,
ImlibOp op, char blend,
void char anti_alias);
__imlib_Ellipse_FillToImage(int xc, int yc, int a, int b, DATA32 color,
ImlibImage *im, int clx, int cly, int clw, int clh,
ImlibOp op, char blend, char anti_alias);
void __imlib_Ellipse_FillToImage(int xc, int yc, int a, int b,
DATA32 color, ImlibImage * im,
int clx, int cly,
int clw, int clh,
ImlibOp op, char blend,
char anti_alias);
/* polygon handling functions: in polygon.c */ /* polygon handling functions: in polygon.c */
ImlibPoly __imlib_polygon_new(void); ImlibPoly __imlib_polygon_new(void);
void __imlib_polygon_free(ImlibPoly poly); void __imlib_polygon_free(ImlibPoly poly);
void __imlib_polygon_add_point(ImlibPoly poly, int x, int y); void __imlib_polygon_add_point(ImlibPoly poly, int x, int y);
unsigned char __imlib_polygon_contains_point(ImlibPoly poly, int x, int y); unsigned char __imlib_polygon_contains_point(ImlibPoly poly,
void __imlib_polygon_get_bounds(ImlibPoly poly, int *px1, int *py1, int *px2, int *py2); int x, int y);
void __imlib_polygon_get_bounds(ImlibPoly poly,
int *px1, int *py1,
int *px2, int *py2);
/* polygon drawing and filling: in polygon.c */ /* polygon drawing and filling: in polygon.c */
void void __imlib_Polygon_DrawToImage(ImlibPoly poly, char closed,
__imlib_Polygon_DrawToImage(ImlibPoly poly, char closed, DATA32 color, DATA32 color, ImlibImage * im,
ImlibImage *im, int clx, int cly, int clw, int clh, int clx, int cly,
ImlibOp op, char blend, char anti_alias); int clw, int clh,
void ImlibOp op, char blend,
__imlib_Polygon_FillToImage(ImlibPoly poly, DATA32 color, char anti_alias);
ImlibImage *im, int clx, int cly, int clw, int clh, void __imlib_Polygon_FillToImage(ImlibPoly poly, DATA32 color,
ImlibOp op, char blend, char anti_alias); ImlibImage * im,
int clx, int cly,
int clw, int clh,
ImlibOp op, char blend,
char anti_alias);
#endif #endif

View File

@ -11,24 +11,34 @@
#define _ROTATE_PREC_MAX (1 << _ROTATE_PREC) #define _ROTATE_PREC_MAX (1 << _ROTATE_PREC)
#define _ROTATE_PREC_BITS (_ROTATE_PREC_MAX - 1) #define _ROTATE_PREC_BITS (_ROTATE_PREC_MAX - 1)
void __imlib_RotateSample(DATA32 *src, DATA32 *dest, int sow, int sw, int sh, void __imlib_RotateSample(DATA32 * src, DATA32 * dest,
int dow, int dw, int dh, int x, int y, int sow, int sw, int sh,
int dow, int dw, int dh,
int x, int y,
int dxh, int dyh, int dxv, int dyv); int dxh, int dyh, int dxv, int dyv);
void __imlib_RotateAA(DATA32 *src, DATA32 *dest, int sow, int sw, int sh, void __imlib_RotateAA(DATA32 * src, DATA32 * dest,
int dow, int dw, int dh, int x, int y, int sow, int sw, int sh,
int dx, int dy, int dxv, int dyv); int dow, int dw, int dh,
void __imlib_BlendImageToImageSkewed(ImlibImage *im_src, ImlibImage *im_dst, int x, int y, int dx, int dy,
char aa, char blend, char merge_alpha, int dxv, int dyv);
int ssx, int ssy, int ssw, int ssh, void __imlib_BlendImageToImageSkewed(ImlibImage * im_src,
ImlibImage * im_dst,
char aa, char blend,
char merge_alpha,
int ssx, int ssy,
int ssw, int ssh,
int ddx, int ddy, int ddx, int ddy,
int hsx, int hsy, int vsx, int vsy, int hsx, int hsy,
ImlibColorModifier *cm, ImlibOp op, int vsx, int vsy,
int clx, int cly, int clw, int clh); ImlibColorModifier * cm,
ImlibOp op,
int clx, int cly,
int clw, int clh);
#ifdef DO_MMX_ASM #ifdef DO_MMX_ASM
void __imlib_mmx_RotateAA(DATA32 *src, DATA32 *dest, int sow, int sw, int sh, void __imlib_mmx_RotateAA(DATA32 * src, DATA32 * dest, int sow,
int dow, int dw, int dh, int x, int y, int sw, int sh, int dow, int dw,
int dx, int dy, int dxv, int dyv); int dh, int x, int y, int dx, int dy,
int dxv, int dyv);
#endif #endif
#endif #endif

View File

@ -5,20 +5,21 @@
typedef struct _imlib_scale_info ImlibScaleInfo; typedef struct _imlib_scale_info ImlibScaleInfo;
ImlibScaleInfo * ImlibScaleInfo *__imlib_CalcScaleInfo(ImlibImage * im,
__imlib_CalcScaleInfo(ImlibImage *im, int sw, int sh, int dw, int dh, char aa); int sw, int sh,
ImlibScaleInfo * int dw, int dh, char aa);
__imlib_FreeScaleInfo(ImlibScaleInfo *isi); ImlibScaleInfo *__imlib_FreeScaleInfo(ImlibScaleInfo * isi);
void void __imlib_ScaleSampleRGBA(ImlibScaleInfo * isi, DATA32 * dest,
__imlib_ScaleSampleRGBA(ImlibScaleInfo *isi, DATA32 *dest, int dxx, int dyy, int dxx, int dyy, int dx, int dy,
int dx, int dy, int dw, int dh, int dow); int dw, int dh, int dow);
void void __imlib_ScaleAARGBA(ImlibScaleInfo * isi, DATA32 * dest,
__imlib_ScaleAARGBA(ImlibScaleInfo *isi, DATA32 *dest, int dxx, int dyy, int dxx, int dyy, int dx, int dy,
int dx, int dy, int dw, int dh, int dow, int sow); int dw, int dh, int dow, int sow);
void void __imlib_ScaleAARGB(ImlibScaleInfo * isi, DATA32 * dest,
__imlib_ScaleAARGB(ImlibScaleInfo *isi, DATA32 *dest, int dxx, int dyy, int dxx, int dyy, int dx, int dy,
int dx, int dy, int dw, int dh, int dow, int sow); int dw, int dh, int dow, int sow);
void void __imlib_Scale_mmx_AARGBA(ImlibScaleInfo * isi,
__imlib_Scale_mmx_AARGBA(ImlibScaleInfo *isi, DATA32 *dest, int dxx, int dyy, DATA32 * dest,
int dx, int dy, int dw, int dh, int dow, int sow); int dxx, int dyy, int dx, int dy,
int dw, int dh, int dow, int sow);
#endif #endif

View File

@ -37,8 +37,7 @@
typedef struct _imlib_function_param IFunctionParam; typedef struct _imlib_function_param IFunctionParam;
typedef struct _imlib_function_param *pIFunctionParam; typedef struct _imlib_function_param *pIFunctionParam;
struct _imlib_function_param struct _imlib_function_param {
{
char *key; char *key;
int type; int type;
void *data; void *data;
@ -47,22 +46,23 @@ struct _imlib_function_param
typedef struct _imlib_function IFunction; typedef struct _imlib_function IFunction;
typedef struct _imlib_function *pIFunction; typedef struct _imlib_function *pIFunction;
struct _imlib_function struct _imlib_function {
{
char *name; char *name;
pIFunctionParam params; pIFunctionParam params;
pIFunction next; pIFunction next;
}; };
typedef struct _imlib_variable typedef struct _imlib_variable {
{
void *ptr; void *ptr;
struct _imlib_variable *next; struct _imlib_variable *next;
} IVariable; } IVariable;
ImlibImage *__imlib_script_parse(ImlibImage *im, char *script, va_list); ImlibImage *__imlib_script_parse(ImlibImage * im, char *script,
IFunctionParam *__imlib_script_parse_parameters(ImlibImage *im, char *parameters); va_list);
ImlibImage *__imlib_script_parse_function(ImlibImage *im, char *function); IFunctionParam *__imlib_script_parse_parameters(ImlibImage * im,
char *parameters);
ImlibImage *__imlib_script_parse_function(ImlibImage * im,
char *function);
void __imlib_script_tidyup(void); void __imlib_script_tidyup(void);
void *__imlib_script_get_next_var(void); void *__imlib_script_get_next_var(void);
void __imlib_script_add_var(void *ptr); void __imlib_script_add_var(void *ptr);

View File

@ -8,14 +8,13 @@ typedef void (*ImlibPointDrawFunction)(DATA32, DATA32 *);
ImlibPointDrawFunction ImlibPointDrawFunction
__imlib_GetPointDrawFunction(ImlibOp op, char dst_alpha, char blend); __imlib_GetPointDrawFunction(ImlibOp op, char dst_alpha, char blend);
typedef void (*ImlibSpanDrawFunction) (DATA32, DATA32 *, int); typedef void (*ImlibSpanDrawFunction) (DATA32, DATA32 *, int);
ImlibSpanDrawFunction ImlibSpanDrawFunction
__imlib_GetSpanDrawFunction(ImlibOp op, char dst_alpha, char blend); __imlib_GetSpanDrawFunction(ImlibOp op, char dst_alpha, char blend);
typedef void (*ImlibShapedSpanDrawFunction) (DATA8 *, DATA32, DATA32 *,
typedef void (*ImlibShapedSpanDrawFunction)(DATA8 *, DATA32, DATA32 *, int); int);
ImlibShapedSpanDrawFunction ImlibShapedSpanDrawFunction
__imlib_GetShapedSpanDrawFunction(ImlibOp op, char dst_alpha, char blend); __imlib_GetShapedSpanDrawFunction(ImlibOp op, char dst_alpha, char blend);

View File

@ -5,14 +5,15 @@
typedef struct _imlibupdate ImlibUpdate; typedef struct _imlibupdate ImlibUpdate;
struct _imlibupdate struct _imlibupdate {
{
int x, y, w, h; int x, y, w, h;
ImlibUpdate *next; ImlibUpdate *next;
}; };
ImlibUpdate *__imlib_AddUpdate(ImlibUpdate *u, int x, int y, int w, int h); ImlibUpdate *__imlib_AddUpdate(ImlibUpdate * u,
ImlibUpdate *__imlib_MergeUpdate(ImlibUpdate *u, int w, int h, int hgapmax); int x, int y, int w, int h);
ImlibUpdate *__imlib_MergeUpdate(ImlibUpdate * u,
int w, int h, int hgapmax);
void __imlib_FreeUpdates(ImlibUpdate * u); void __imlib_FreeUpdates(ImlibUpdate * u);
ImlibUpdate *__imlib_DupUpdates(ImlibUpdate * u); ImlibUpdate *__imlib_DupUpdates(ImlibUpdate * u);