- cairo_set_source_rgb (cr, 0.0, 0.8, 0.1);
- cairo_rectangle (cr, x-2, y-2, 4, 4);
+ /* stroke out a speaker shape */
+
+ cairo_move_to (cr, c.x, c.y);
+ cairo_save (cr);
+ cairo_rotate (cr, -(speaker->position.azi/360.0) * (2.0 * M_PI));
+ if (small) {
+ cairo_scale (cr, 0.8, 0.8);
+ } else {
+ cairo_scale (cr, 1.2, 1.2);
+ }
+ cairo_rel_line_to (cr, 4, -2);
+ cairo_rel_line_to (cr, 0, -7);
+ cairo_rel_line_to (cr, 5, +5);
+ cairo_rel_line_to (cr, 5, 0);
+ cairo_rel_line_to (cr, 0, 5);
+ cairo_rel_line_to (cr, -5, 0);
+ cairo_rel_line_to (cr, -5, +5);
+ cairo_rel_line_to (cr, 0, -7);
+ cairo_close_path (cr);
+ cairo_set_source_rgba (cr, 0.282, 0.517, 0.662, 1.0);