… | |
… | |
92 | void fill (const rgba &c, int x, int y, int w, int h); |
92 | void fill (const rgba &c, int x, int y, int w, int h); |
93 | void add_alpha (); |
93 | void add_alpha (); |
94 | //void linear_gradient (const XLinearGradient *gradient, const XFixed *stops, const XRenderColor *colors, int nstops); |
94 | //void linear_gradient (const XLinearGradient *gradient, const XFixed *stops, const XRenderColor *colors, int nstops); |
95 | //void radial_gradient (const XRadialGradient *gradient, const XFixed *stops, const XRenderColor *colors, int nstops); |
95 | //void radial_gradient (const XRadialGradient *gradient, const XFixed *stops, const XRenderColor *colors, int nstops); |
96 | //void conical_gradient (const XConicalGradient *gradient, const XFixed *stops, const XRenderColor *colors, int nstops); |
96 | //void conical_gradient (const XConicalGradient *gradient, const XFixed *stops, const XRenderColor *colors, int nstops); |
|
|
97 | |
97 | void brightness (int32_t r, int32_t g, int32_t b, int32_t a); |
98 | void brightness (int32_t r, int32_t g, int32_t b, int32_t a); |
98 | void contrast (int32_t r, int32_t g, int32_t b, int32_t a); |
99 | void contrast (int32_t r, int32_t g, int32_t b, int32_t a); |
99 | |
100 | |
100 | void brightness (nv r, nv g, nv b, nv a = 1.) |
101 | void brightness (nv r, nv g, nv b, nv a = 1.) |
101 | { |
102 | { |
… | |
… | |
127 | rxvt_img *transform (const nv matrix[3][3]); |
128 | rxvt_img *transform (const nv matrix[3][3]); |
128 | rxvt_img *scale (int new_width, int new_height); |
129 | rxvt_img *scale (int new_width, int new_height); |
129 | rxvt_img *rotate (int cx, int cy, nv phi); |
130 | rxvt_img *rotate (int cx, int cy, nv phi); |
130 | rxvt_img *convert_format (XRenderPictFormat *format, const rgba &bg); |
131 | rxvt_img *convert_format (XRenderPictFormat *format, const rgba &bg); |
131 | rxvt_img *tint (const rgba &c); |
132 | rxvt_img *tint (const rgba &c); |
|
|
133 | rxvt_img *shade (nv factor, rgba c = rgba (rgba::MAX_CC, rgba::MAX_CC, rgba::MAX_CC)); |
132 | rxvt_img *filter (const char *name, int nparams = 0, nv *params = 0); |
134 | rxvt_img *filter (const char *name, int nparams = 0, nv *params = 0); |
|
|
135 | rxvt_img *muladd (nv mul, nv add); // general multiply and add, implemented as the biggest hack ever :/ |
133 | |
136 | |
134 | // egregiuous helper category |
137 | // egregious helper category |
135 | rxvt_img *replace (rxvt_img *&p) |
138 | rxvt_img *replace (rxvt_img *&p) |
136 | { |
139 | { |
137 | delete p; |
140 | delete p; |
138 | p = this; |
141 | p = this; |
139 | return this; |
142 | return this; |