ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/src/background.h
(Generate patch)

Comparing rxvt-unicode/src/background.h (file contents):
Revision 1.36 by sf-exg, Thu Nov 18 17:28:12 2010 UTC vs.
Revision 1.46 by sf-exg, Sun Jan 23 12:54:42 2011 UTC

10# undef min 10# undef min
11# undef max 11# undef max
12#endif 12#endif
13 13
14#ifdef HAVE_PIXBUF 14#ifdef HAVE_PIXBUF
15#include <gdk-pixbuf-xlib/gdk-pixbuf-xlib.h> 15#include <gdk-pixbuf/gdk-pixbuf.h>
16#endif 16#endif
17 17
18#if defined(BG_IMAGE_FROM_FILE) || defined(ENABLE_TRANSPARENCY) 18#if defined(BG_IMAGE_FROM_FILE) || defined(ENABLE_TRANSPARENCY)
19# define HAVE_BG_PIXMAP 1 /* to simplify further usage */ 19# define HAVE_BG_PIXMAP 1 /* to simplify further usage */
20struct bgPixmap_t 20struct bgPixmap_t
28 geometryFlags = propScale | rootAlign, 28 geometryFlags = propScale | rootAlign,
29 29
30 tintSet = 1 << 8, 30 tintSet = 1 << 8,
31 tintNeeded = 1 << 9, 31 tintNeeded = 1 << 9,
32 tintWholesome = 1 << 10, 32 tintWholesome = 1 << 10,
33 tintFlags = tintSet | tintNeeded | tintWholesome, 33 tintFlags = tintNeeded | tintWholesome,
34 34
35 blurNeeded = 1 << 11, 35 blurNeeded = 1 << 11,
36 36
37 effectsFlags = tintNeeded | blurNeeded,
38
37 HAS_RENDER = 1 << 12, 39 HAS_RENDER = 1 << 12,
38 HAS_RENDER_CONV = 1 << 13, 40 HAS_RENDER_CONV = 1 << 13,
41 CLIENT_RENDER = 1 << 14,
39 42
40 isTransparent = 1 << 16, 43 isTransparent = 1 << 16,
41 isInvalid = 1 << 17, 44 isValid = 1 << 17,
42 hasChanged = 1 << 19, 45 hasChanged = 1 << 19,
43 sizeSensitive = 1 << 20, 46 sizeSensitive = 1 << 20,
44 }; 47 };
45 48
46 unsigned int flags; 49 unsigned int flags;
47
48 enum {
49 transpPmapTiled = 1 << 0,
50 transpPmapTinted = tintNeeded,
51 transpPmapBlurred = blurNeeded,
52 transpTransformations = tintNeeded | blurNeeded,
53 }; /* these flags are returned by make_transparency_pixmap if called */
54 50
55# ifdef BG_IMAGE_FROM_FILE 51# ifdef BG_IMAGE_FROM_FILE
56# ifdef HAVE_AFTERIMAGE 52# ifdef HAVE_AFTERIMAGE
57 ASImage *original_asim; 53 ASImage *original_asim;
58# endif 54# endif
59 55
60# ifdef HAVE_PIXBUF 56# ifdef HAVE_PIXBUF
61 GdkPixbuf *pixbuf; 57 GdkPixbuf *pixbuf;
58 bool pixbuf_to_pixmap (GdkPixbuf *pixbuf, Pixmap pixmap, GC gc,
59 int src_x, int src_y, int dst_x, int dst_y,
60 unsigned int width, unsigned int height);
62# endif 61# endif
63 62
64 void get_image_geometry (int image_width, int image_height, int &w, int &h, int &x, int &y); 63 void get_image_geometry (int image_width, int image_height, int &w, int &h, int &x, int &y);
65 bool render_image (unsigned long background_flags); 64 bool render_image (unsigned long background_flags);
66 bool have_image; 65 bool have_image;
96 int h_blurRadius, v_blurRadius; 95 int h_blurRadius, v_blurRadius;
97 96
98 bool set_transparent (); 97 bool set_transparent ();
99 bool set_blur_radius (const char *geom); 98 bool set_blur_radius (const char *geom);
100 bool set_tint (rxvt_color &new_tint); 99 bool set_tint (rxvt_color &new_tint);
101 bool unset_tint ();
102 bool set_shade (const char *shade_str); 100 bool set_shade (const char *shade_str);
103 bool blur_pixmap (Pixmap pixmap, Visual *visual, int width, int height); 101 bool blur_pixmap (Pixmap pixmap, Visual *visual, int width, int height);
104 bool tint_pixmap (Pixmap pixmap, Visual *visual, int width, int height); 102 bool tint_pixmap (Pixmap pixmap, Visual *visual, int width, int height);
105 void set_root_pixmap (); 103 void set_root_pixmap ();
106 104
107 unsigned long make_transparency_pixmap ();/* returns combination of the transpTransformations flags */ 105 unsigned long make_transparency_pixmap ();
108# endif 106# endif
109 double invalid_since, valid_since; 107 double valid_since;
110 108
111 Pixmap pixmap; 109 Pixmap pixmap;
112 unsigned int pmap_width, pmap_height; 110 unsigned int pmap_width, pmap_height;
113 unsigned int pmap_depth;
114 111
112 int target_x;
113 int target_y;
114 bool set_position (int x, int y);
115 bool window_size_sensitive (); 115 bool window_size_sensitive ();
116 bool window_position_sensitive (); 116 bool window_position_sensitive ();
117 117
118 bool need_client_side_rendering ();
119 void apply ();
120 bool render (); 118 bool render ();
121 void invalidate () 119 void invalidate ()
122 { 120 {
123 if (!(flags & isInvalid))
124 {
125 flags |= isInvalid; 121 flags &= ~isValid;
126 invalid_since = ev::now ();
127 }
128 } 122 }
129}; 123};
130#else 124#else
131# undef HAVE_BG_PIXMAP 125# undef HAVE_BG_PIXMAP
132#endif 126#endif

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines