4 * Copyright (C) 2008 - 2009 The Geeqie Team
8 * This software is released under the GNU General Public License (GNU GPL).
9 * Please read the included file COPYING for more information.
10 * This software comes with no warranty of any kind, use at your own risk!
18 gboolean pixbuf_to_file_as_png (GdkPixbuf *pixbuf, const gchar *filename);
19 gboolean pixbuf_to_file_as_jpg(GdkPixbuf *pixbuf, const gchar *filename, gint quality);
21 void pixbuf_inline_register_stock_icons(void);
23 GdkPixbuf *pixbuf_inline(const gchar *key);
24 GdkPixbuf *pixbuf_fallback(FileData *fd, gint requested_width, gint requested_height);
26 gint pixbuf_scale_aspect(gint req_w, gint req_h, gint old_w, gint old_h, gint *new_w, gint *new_h);
28 #define PIXBUF_INLINE_FOLDER_CLOSED "folder_closed"
29 #define PIXBUF_INLINE_FOLDER_LOCKED "folder_locked"
30 #define PIXBUF_INLINE_FOLDER_OPEN "folder_open"
31 #define PIXBUF_INLINE_FOLDER_UP "folder_up"
32 #define PIXBUF_INLINE_SCROLLER "scroller"
33 #define PIXBUF_INLINE_BROKEN "broken"
34 #define PIXBUF_INLINE_ICON "icon"
35 #define PIXBUF_INLINE_LOGO "logo"
37 #define PIXBUF_INLINE_ICON_FLOAT "icon_float"
38 #define PIXBUF_INLINE_ICON_THUMB "icon_thumb"
40 #define PIXBUF_INLINE_ICON_BOOK "icon_book"
41 #define PIXBUF_INLINE_ICON_CONFIG "icon_config"
42 #define PIXBUF_INLINE_ICON_TOOLS "icon_tools"
43 #define PIXBUF_INLINE_ICON_VIEW "icon_view"
46 GdkPixbuf *pixbuf_copy_rotate_90(GdkPixbuf *src, gint counter_clockwise);
47 GdkPixbuf *pixbuf_copy_mirror(GdkPixbuf *src, gint mirror, gint flip);
48 GdkPixbuf* pixbuf_apply_orientation(GdkPixbuf *pixbuf, gint orientation);
50 void pixbuf_draw_rect_fill(GdkPixbuf *pb,
51 gint x, gint y, gint w, gint h,
52 gint r, gint g, gint b, gint a);
54 void pixbuf_draw_rect(GdkPixbuf *pb,
55 gint x, gint y, gint w, gint h,
56 gint r, gint g, gint b, gint a,
57 gint left, gint right, gint top, gint bottom);
59 void pixbuf_set_rect_fill(GdkPixbuf *pb,
60 gint x, gint y, gint w, gint h,
61 gint r, gint g, gint b, gint a);
63 void pixbuf_set_rect(GdkPixbuf *pb,
64 gint x, gint y, gint w, gint h,
65 gint r, gint g, gint b, gint a,
66 gint left, gint right, gint top, gint bottom);
68 void pixbuf_pixel_set(GdkPixbuf *pb, gint x, gint y, gint r, gint g, gint b, gint a);
71 void pixbuf_draw_layout(GdkPixbuf *pixbuf, PangoLayout *layout, GtkWidget *widget,
73 guint8 r, guint8 g, guint8 b, guint8 a);
76 void pixbuf_draw_triangle(GdkPixbuf *pb,
77 gint clip_x, gint clip_y, gint clip_w, gint clip_h,
78 gint x1, gint y1, gint x2, gint y2, gint x3, gint y3,
79 guint8 r, guint8 g, guint8 b, guint8 a);
81 void pixbuf_draw_line(GdkPixbuf *pb,
82 gint clip_x, gint clip_y, gint clip_w, gint clip_h,
83 gint x1, gint y1, gint x2, gint y2,
84 guint8 r, guint8 g, guint8 b, guint8 a);
86 void pixbuf_draw_shadow(GdkPixbuf *pb,
87 gint clip_x, gint clip_y, gint clip_w, gint clip_h,
88 gint x, gint y, gint w, gint h, gint border,
89 guint8 r, guint8 g, guint8 b, guint8 a);
91 void pixbuf_desaturate_rect(GdkPixbuf *pb,
92 gint x, gint y, gint w, gint h);
97 gint util_clip_region(gint x, gint y, gint w, gint h,
98 gint clip_x, gint clip_y, gint clip_w, gint clip_h,
99 gint *rx, gint *ry, gint *rw, gint *rh);
100 void util_clip_triangle(gint x1, gint y1, gint x2, gint y2, gint x3, gint y3,
101 gint *rx, gint *ry, gint *rw, gint *rh);
105 /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */