54
54
G_OBJECT_CLASS (awn_throbber_parent_class)->dispose (object);
58
paint_sad_face (cairo_t *cr)
61
const gfloat EYE_SIZE = 0.04;
62
gfloat EYE_POS_X, EYE_POS_Y;
64
awn_cairo_rounded_rect(cr, 0.05, 0.05, 0.9, 0.9, 0.05, ROUND_ALL);
67
#define MINI_RECT(cr, x, y) \
68
cairo_rectangle (cr, x, y, EYE_SIZE, EYE_SIZE); \
75
MINI_RECT(cr, EYE_POS_X, EYE_POS_Y);
76
MINI_RECT(cr, EYE_POS_X, EYE_POS_Y + 2*EYE_SIZE);
77
MINI_RECT(cr, EYE_POS_X + EYE_SIZE, EYE_POS_Y + EYE_SIZE);
78
MINI_RECT(cr, EYE_POS_X + 2*EYE_SIZE, EYE_POS_Y);
79
MINI_RECT(cr, EYE_POS_X + 2*EYE_SIZE, EYE_POS_Y + 2*EYE_SIZE);
84
MINI_RECT(cr, EYE_POS_X, EYE_POS_Y);
85
MINI_RECT(cr, EYE_POS_X, EYE_POS_Y + 2*EYE_SIZE);
86
MINI_RECT(cr, EYE_POS_X + EYE_SIZE, EYE_POS_Y + EYE_SIZE);
87
MINI_RECT(cr, EYE_POS_X + 2*EYE_SIZE, EYE_POS_Y);
88
MINI_RECT(cr, EYE_POS_X + 2*EYE_SIZE, EYE_POS_Y + 2*EYE_SIZE);
93
cairo_curve_to(cr, 0.45, 0.48,
99
cairo_curve_to(cr, 0.25, 0.73,
58
107
awn_throbber_expose_event (GtkWidget *widget, GdkEventExpose *event)
121
170
case AWN_THROBBER_TYPE_SAD_FACE:
123
const gfloat EYE_SIZE = 0.04;
125
GdkColor c = gtk_widget_get_style (widget)->fg[GTK_STATE_NORMAL];
126
double r = c.red / 65535.0;
127
double g = c.green / 65535.0;
128
double b = c.blue / 65535.0;
130
gfloat EYE_POS_X, EYE_POS_Y;
132
cairo_set_source_rgb(cr, r, g, b);
133
cairo_set_line_width(cr, 0.03);
135
awn_cairo_rounded_rect(cr, 0.05, 0.05, 0.9, 0.9, 0.05, ROUND_ALL);
141
cairo_rectangle(cr, EYE_POS_X, EYE_POS_Y, EYE_SIZE, EYE_SIZE);
143
cairo_rectangle(cr, EYE_POS_X, EYE_POS_Y + 2*EYE_SIZE, EYE_SIZE, EYE_SIZE);
145
cairo_rectangle(cr, EYE_POS_X + EYE_SIZE, EYE_POS_Y + EYE_SIZE, EYE_SIZE, EYE_SIZE);
147
cairo_rectangle(cr, EYE_POS_X + 2*EYE_SIZE, EYE_POS_Y, EYE_SIZE, EYE_SIZE);
149
cairo_rectangle(cr, EYE_POS_X + 2*EYE_SIZE, EYE_POS_Y + 2*EYE_SIZE, EYE_SIZE, EYE_SIZE);
154
cairo_rectangle(cr, EYE_POS_X, EYE_POS_Y, EYE_SIZE, EYE_SIZE);
156
cairo_rectangle(cr, EYE_POS_X, EYE_POS_Y + 2*EYE_SIZE, EYE_SIZE, EYE_SIZE);
158
cairo_rectangle(cr, EYE_POS_X + EYE_SIZE, EYE_POS_Y + EYE_SIZE, EYE_SIZE, EYE_SIZE);
160
cairo_rectangle(cr, EYE_POS_X + 2*EYE_SIZE, EYE_POS_Y, EYE_SIZE, EYE_SIZE);;
162
cairo_rectangle(cr, EYE_POS_X + 2*EYE_SIZE, EYE_POS_Y + 2*EYE_SIZE, EYE_SIZE, EYE_SIZE);
166
cairo_curve_to(cr, 0.45, 0.48,
172
cairo_curve_to(cr, 0.25, 0.73,
175
c = gtk_widget_get_style (widget)->fg[GTK_STATE_NORMAL];
177
g = c.green / 65535.0;
178
b = c.blue / 65535.0;
180
cairo_set_source_rgb (cr, r, g, b);
181
cairo_set_line_width (cr, 0.03);
178
186
case AWN_THROBBER_TYPE_ARROW_1: