public int RatingFromPosition(Gdk.Rectangle area, double x) { double r_x, r_y; ComputePosition (area, out r_x, out r_y); return x <= r_x ? 0 : Clamp (MinRating, MaxRating, (int)Math.Ceiling ((x - r_x) / Size) + MinRating); }