void HandleZoomChanged (object sender, System.EventArgs args)
{
zoom_scale.ValueChanged -= HandleZoomScaleValueChanged;
double zoom = .5;
switch (ViewMode) {
case ModeType.PhotoView:
zoom = photo_view.NormalizedZoom;
zoom_scale.Value = zoom;
break;
case ModeType.IconView:
zoom = icon_view.Zoom;
if (zoom == 0.0 || zoom == 100.0 || zoom != zoom_scale.Value)
zoom_scale.Value = zoom;
break;
}
zoom_in.Sensitive = (zoom != 1.0);
zoom_out.Sensitive = (zoom != 0.0);
zoom_scale.ValueChanged += HandleZoomScaleValueChanged;
}