void TaskDefaultsConfigPanel::OnModified(DataField &df) { if (IsDataField(StartType, df)) SetStartLabel(); else if (IsDataField(FinishType, df)) SetFinishLabel(); }
void TaskPropertiesPanel::OnModified(DataField &df) { if (IsDataField(FAI_FINISH_HEIGHT, df)) OnFAIFinishHeightChange((DataFieldBoolean &)df); else if (IsDataField(TASK_TYPE, df)) OnTaskTypeChange((DataFieldEnum &)df); }
void MapDisplayConfigPanel::OnModified(DataField &df) { if (IsDataField(OrientationCruise, df) || IsDataField(OrientationCircling, df) || IsDataField(MapShiftBias, df)) { UpdateVisibilities(); } }
void DeviceEditWidget::OnModified(DataField &df) { if (IsDataField(Port, df) || IsDataField(Driver, df) || IsDataField(K6Bt, df)) UpdateVisibilities(); if (listener != NULL) listener->OnModified(*this); }
void TrackingConfigPanel::OnModified(DataField &df) { if (IsDataField(SL_ENABLED, df)) { const DataFieldBoolean &dfb = (const DataFieldBoolean &)df; SetSkyLinesEnabled(dfb.GetAsBoolean()); } else if (IsDataField(LT24Enabled, df)) { const DataFieldBoolean &dfb = (const DataFieldBoolean &)df; SetEnabled(dfb.GetAsBoolean()); } }
void AirspaceConfigPanel::OnModified(DataField &df) { if (IsDataField(AirspaceDisplay, df)) { const DataFieldEnum &dfe = (const DataFieldEnum &)df; AirspaceDisplayMode mode = (AirspaceDisplayMode)dfe.GetValue(); ShowDisplayControls(mode); } else if (IsDataField(AirspaceWarnings, df)) { const DataFieldBoolean &dfb = (const DataFieldBoolean &)df; ShowWarningControls(dfb.GetAsBoolean()); } }
void RouteConfigPanel::OnModified(DataField &df) { if (IsDataField(RoutePlannerMode, df)) { RoutePlannerConfig::Mode mode = (RoutePlannerConfig::Mode)df.GetAsInteger(); ShowRouteControls(mode != RoutePlannerConfig::Mode::NONE); } else if (IsDataField(TurningReach, df)) { RoutePlannerConfig::ReachMode mode = (RoutePlannerConfig::ReachMode)df.GetAsInteger(); ShowReachControls(mode != RoutePlannerConfig::ReachMode::OFF); } }
void TaskCalculatorPanel::OnModified(DataField &df) { if (IsDataField(MC, df)) { const DataFieldFloat &dff = (const DataFieldFloat &)df; fixed mc = Units::ToSysVSpeed(dff.GetAsFixed()); ActionInterface::SetManualMacCready(mc); Refresh(); } else if (IsDataField(CRUISE_EFFICIENCY, df)) { const DataFieldFloat &dff = (const DataFieldFloat &)df; SetCruiseEfficiency(dff.GetAsFixed() / 100); } }
void FlightSetupPanel::OnModified(DataField &df) { if (IsDataField(Ballast, df)) { const DataFieldFloat &dff = (const DataFieldFloat &)df; SetBallastLitres(dff.GetAsFixed()); } else if (IsDataField(Bugs, df)) { const DataFieldFloat &dff = (const DataFieldFloat &)df; SetBugs(fixed(1) - (dff.GetAsFixed() / 100)); } else if (IsDataField(QNH, df)) { const DataFieldFloat &dff = (const DataFieldFloat &)df; SetQNH(Units::FromUserPressure(dff.GetAsFixed())); } }
void RouteConfigPanel::OnModified(DataField &df) { if (IsDataField(RoutePlannerMode, df)) { const DataFieldEnum &dfe = (const DataFieldEnum &)df; RoutePlannerConfig::Mode mode = (RoutePlannerConfig::Mode)dfe.GetValue(); ShowRouteControls(mode != RoutePlannerConfig::Mode::NONE); } else if (IsDataField(TurningReach, df)) { const DataFieldEnum &dfe = (const DataFieldEnum &)df; RoutePlannerConfig::ReachMode mode = (RoutePlannerConfig::ReachMode)dfe.GetValue(); ShowReachControls(mode != RoutePlannerConfig::ReachMode::OFF); } }
void TaskCalculatorPanel::OnSpecial(DataField &df) { if (IsDataField(MC, df)) { const DerivedInfo &calculated = CommonInterface::Calculated(); if (positive(calculated.time_climb)) { fixed mc = calculated.total_height_gain / calculated.time_climb; DataFieldFloat &dff = (DataFieldFloat &)df; dff.Set(Units::ToUserVSpeed(mc)); ActionInterface::SetManualMacCready(mc); Refresh(); } } else if (IsDataField(CRUISE_EFFICIENCY, df)) { GetCruiseEfficiency(); } }
void OnModified(DataField &df) override { if (IsDataField(INFOBOX, df)) { const DataFieldEnum &dfe = (const DataFieldEnum &)df; SetCurrentInfoBox(dfe.GetValue()); } else if (IsDataField(CONTENT, df)) { const DataFieldEnum &dfe = (const DataFieldEnum &)df; auto new_value = (InfoBoxFactory::Type)dfe.GetValue(); if (new_value == data.contents[current_preview]) return; changed = true; data.contents[current_preview] = new_value; previews[current_preview].Invalidate(); RefreshEditContentDescription(); } }
void SymbolsConfigPanel::OnModified(DataField &df) { if (IsDataField(Trail, df)) { TrailSettings::Length trail_length = (TrailSettings::Length)df.GetAsInteger(); ShowTrailControls(trail_length != TrailSettings::Length::OFF); } }
void GaugesConfigPanel::OnModified(DataField &df) { if (IsDataField(FinalGlideBarDisplayModeControl, df)) { const DataFieldEnum &dfe = (const DataFieldEnum &)df; FinalGlideBarDisplayMode fgbdm = (FinalGlideBarDisplayMode)dfe.GetValue(); SetRowVisible(EnableFinalGlideBarMC0, fgbdm != FinalGlideBarDisplayMode::OFF); } }
void TimeConfigPanel::OnModified(DataField &df) { if (IsDataField(UTCOffset, df)) { DataFieldFloat &df2 = (DataFieldFloat &)df; int ival = iround(df2.GetAsFixed() * 3600); SetLocalTime(ival); } }
void SymbolsConfigPanel::OnModified(DataField &df) { if (IsDataField(TRAIL_LENGTH, df)) { const DataFieldEnum &dfe = (const DataFieldEnum &)df; TrailSettings::Length trail_length = (TrailSettings::Length)dfe.GetValue(); ShowTrailControls(trail_length != TrailSettings::Length::OFF); } }
void TrackingConfigPanel::OnModified(DataField &df) { #ifdef HAVE_SKYLINES_TRACKING if (IsDataField(SL_ENABLED, df)) { const DataFieldBoolean &dfb = (const DataFieldBoolean &)df; SetSkyLinesEnabled(dfb.GetAsBoolean()); return; } #endif #ifdef HAVE_LIVETRACK24 if (IsDataField(LT24Enabled, df)) { const DataFieldBoolean &dfb = (const DataFieldBoolean &)df; SetEnabled(dfb.GetAsBoolean()); } #endif }
void TaskStatusPanel::OnModified(DataField &df) { if (IsDataField(MC, df)) { const DataFieldFloat &dff = (const DataFieldFloat &)df; auto mc = Units::ToSysVSpeed(dff.GetAsFixed()); ActionInterface::SetManualMacCready(mc); Refresh(); } }
void TerrainDisplayConfigPanel::OnModified(DataField &df) { if (IsDataField(EnableTerrain, df)) { const DataFieldBoolean &dfb = (const DataFieldBoolean &)df; terrain_settings.enable = dfb.GetAsBoolean(); ShowTerrainControls(); } else { UpdateTerrainPreview(); } }
void UnitsConfigPanel::OnModified(DataField &df) { if (IsDataField(UnitsPreset, df)) { const DataFieldEnum &dfe = (const DataFieldEnum &)df; int result = dfe.GetValue(); if (result > 0) { // First selection means not to load any preset. const UnitSetting &units = Units::Store::Read(result - 1); UpdateUnitFields(units); } } else PresetCheck(); }
void TerrainDisplayConfigPanel::OnModified(DataField &df) { if (IsDataField(EnableTerrain, df)) { const DataFieldBoolean &dfb = (const DataFieldBoolean &)df; terrain_settings.enable = dfb.GetAsBoolean(); ShowTerrainControls(); } else { terrain_settings.slope_shading = (SlopeShading) GetValueInteger(TerrainSlopeShading); terrain_settings.contrast = PercentToByte(GetValueInteger(TerrainContrast)); terrain_settings.brightness = PercentToByte(GetValueInteger(TerrainBrightness)); terrain_settings.ramp = GetValueInteger(TerrainColors); // Invalidate terrain preview if (terrain != NULL) ((WndOwnerDrawFrame &)GetRow(TerrainPreview)).Invalidate(); } }
void FlightSetupPanel::OnSpecial(DataField &df) { if (IsDataField(Ballast, df)) FlipBallastTimer(); }
void TimeConfigPanel::OnModified(DataField &df) { if (IsDataField(UTCOffset, df)) SetLocalTime(df.GetAsInteger()); }
void TimeConfigPanel::OnModified(DataField &df) { if (IsDataField(UTCOffset, df)) SetLocalTime(RoughTimeDelta::FromSeconds(df.GetAsInteger())); }
FIX::FieldBase Message::extractField( const std::string& string, std::string::size_type& pos, const DataDictionary* pSessionDD /*= 0*/, const DataDictionary* pAppDD /*= 0*/, const Group* pGroup /*= 0*/ ) { std::string::const_iterator const tagStart = string.begin() + pos; std::string::const_iterator const strEnd = string.end(); std::string::const_iterator const equalSign = std::find( tagStart, strEnd, '=' ); if( equalSign == strEnd ) throw InvalidMessage("Equal sign not found in field"); int field = 0; IntConvertor::convert( tagStart, equalSign, field ); std::string::const_iterator const valueStart = equalSign + 1; std::string::const_iterator soh = std::find( valueStart, strEnd, '\001' ); if ( soh == strEnd ) throw InvalidMessage("SOH not found at end of field"); if ( IsDataField( field, pSessionDD, pAppDD ) ) { // Assume length field is 1 less. int lenField = field - 1; // Special case for Signature which violates above assumption. if ( field == FIELD::Signature ) lenField = FIELD::SignatureLength; if ( pGroup && pGroup->isSetField( lenField ) ) { const std::string& fieldLength = pGroup->getField( lenField ); soh = valueStart + atol( fieldLength.c_str() ); } else { FIX::FieldMap *lenMap; if ( isHeaderField( lenField ) ) { lenMap = &m_header; } else { lenMap = this; } if ( lenMap->isSetField( lenField ) ) { const std::string& fieldLength = lenMap->getField( lenField ); soh = valueStart + atol( fieldLength.c_str() ); } } } std::string::const_iterator const tagEnd = soh + 1; pos = std::distance( string.begin(), tagEnd ); return FieldBase ( field, valueStart, soh, tagStart, tagEnd ); }
void WaypointDisplayConfigPanel::OnModified(DataField &df) { if (IsDataField(AppUseSWLandablesRendering, df)) UpdateVisibilities(); }
void PlaneEditWidget::OnModified(DataField &df) { if (IsDataField(REGISTRATION, df)) UpdateCaption(); }
/* virtual methods from DataFieldListener */ void OnModified(DataField &df) override { if (IsDataField(ITEM, df)) UpdateTimeControl(); else if (IsDataField(TIME, df)) OnTimeModified((const DataFieldEnum &)df); }