void Display::restore_mode()
{
- for(list<Monitor>::const_iterator i=monitors.begin(); i!=monitors.end(); ++i)
- if(i->desktop_settings.mode)
- set_mode(*i->desktop_settings.mode, false);
+ for(const Monitor &m: monitors)
+ if(m.desktop_settings.mode)
+ set_mode(*m.desktop_settings.mode, false);
}
const VideoMode *Display::find_mode(const VideoMode &mode, float rate_tolerance) const
if(const VideoMode *current_mode = mode.monitor->current_settings.mode)
target_rate = current_mode->rate;
- for(list<VideoMode>::const_iterator i=modes.begin(); i!=modes.end(); ++i)
+ for(const VideoMode &m: modes)
{
- if(mode.monitor && i->monitor!=mode.monitor)
+ if(mode.monitor && m.monitor!=mode.monitor)
continue;
// Only check rate tolerance against an explicitly requested rate
- if(mode.rate && (i->rate<mode.rate-rate_tolerance || i->rate>mode.rate+rate_tolerance))
+ if(mode.rate && (m.rate<mode.rate-rate_tolerance || m.rate>mode.rate+rate_tolerance))
continue;
- if(i->width!=mode.width || i->height!=mode.height)
+ if(m.width!=mode.width || m.height!=mode.height)
continue;
float ref_rate = target_rate;
if(!ref_rate)
- if(const VideoMode *current_mode = i->monitor->current_settings.mode)
+ if(const VideoMode *current_mode = m.monitor->current_settings.mode)
ref_rate = current_mode->rate;
- float d = abs(i->rate-ref_rate);
+ float d = abs(m.rate-ref_rate);
if(!closest || d<rate_diff)
{
- closest = &*i;
+ closest = &m;
rate_diff = d;
}
}