static DataField * CreateTypeDataField(DataFieldListener *listener) { DataFieldEnum *df = new DataFieldEnum(listener); df->addEnumTexts(type_filter_items); const TCHAR *p = Profile::GetPathBase(ProfileKeys::WaypointFile); if (p != nullptr) df->replaceEnumText((unsigned)TypeFilter::FILE_1, p); p = Profile::GetPathBase(ProfileKeys::AdditionalWaypointFile); if (p != nullptr) df->replaceEnumText((unsigned)TypeFilter::FILE_2, p); df->Set((int)dialog_state.type_index); return df; }
static void InitializeDirection(bool bOnlyHeading) { if (wpDirection) { // initialize datafieldenum for Direction DataFieldEnum* dfe; dfe = (DataFieldEnum*)wpDirection->GetDataField(); if (!bOnlyHeading) { for (unsigned int i=0; i < sizeof(DirectionFilter) / sizeof(DirectionFilter[0]); i++) { dfe->addEnumText(GetDirectionData(i)); } dfe->SetAsInteger(filter_data.direction_index); } dfe->replaceEnumText(1,GetDirectionData(1)); // update heading value to current heading wpDirection->RefreshDisplay(); } }