bool RowFormWidget::SaveValue(unsigned i, Angle &value_r) const { unsigned old_value = AngleDataField::Import(value_r); unsigned new_value = GetValueIntegerAngle(i); if (new_value == old_value) return false; value_r = GetValueAngle(i); return true; }
void WindSettingsPanel::OnModified(DataField &df) { if (!edit_manual_wind) return; const NMEAInfo &basic = CommonInterface::Basic(); WindSettings &settings = CommonInterface::SetComputerSettings().wind; if (&df == &GetDataField(Speed) || &df == &GetDataField(Direction)) { settings.manual_wind.norm = Units::ToSysWindSpeed(GetValueFloat(Speed)); settings.manual_wind.bearing = GetValueAngle(Direction); settings.manual_wind_available.Update(basic.clock); manual_modified = true; } UpdateVector(); }