rendered paste bodystatic void
bacon_volume_button_update_icon (BaconVolumeButton *button)
{
GtkRange *range = GTK_RANGE (button->scale);
float val = gtk_range_get_value (range);
GtkAdjustment *adj;
GdkPixbuf *pixbuf;
float step;
adj = gtk_range_get_adjustment (range);
step = (adj->upper - adj->lower) / 4;
if (val == adj->lower)
pixbuf = button->icon[0];
else if (val > adj->lower && val <= adj->lower + step)
pixbuf = button->icon[1];
else if (val > adj->lower + step && val <= adj->lower + step * 2)
pixbuf = button->icon[2];
else
pixbuf = button->icon[3];
gtk_image_set_from_pixbuf (GTK_IMAGE (button->image), pixbuf);
}