static void FillAudioEnums(const TCHAR* name) { WndProperty *wp; TCHAR fullname[100]; _stprintf(fullname, _T("prpTone%sBeepType"), name); wp = (WndProperty*)wf->FindByName(fullname); if (wp) { DataFieldEnum* dfe; dfe = (DataFieldEnum*)wp->GetDataField(); dfe->addEnumTexts(beep_types); wp->RefreshDisplay(); } _stprintf(fullname, _T("prpTone%sPitchScheme"), name); wp = (WndProperty*)wf->FindByName(fullname); if (wp) { DataFieldEnum* dfe; dfe = (DataFieldEnum*)wp->GetDataField(); dfe->addEnumTexts(pitch_schemes); wp->RefreshDisplay(); } _stprintf(fullname, _T("prpTone%sPeriodScheme"), name); wp = (WndProperty*)wf->FindByName(fullname); if (wp) { DataFieldEnum* dfe; dfe = (DataFieldEnum*)wp->GetDataField(); dfe->addEnumTexts(period_schemes); wp->RefreshDisplay(); } _stprintf(fullname, _T("prpTone%sPitchScale"), name); wp = (WndProperty*)wf->FindByName(fullname); if (wp) { DataFieldEnum* dfe; dfe = (DataFieldEnum*)wp->GetDataField(); dfe->addEnumTexts(scales); wp->RefreshDisplay(); } _stprintf(fullname, _T("prpTone%sPeriodScale"), name); wp = (WndProperty*)wf->FindByName(fullname); if (wp) { DataFieldEnum* dfe; dfe = (DataFieldEnum*)wp->GetDataField(); dfe->addEnumTexts(scales); wp->RefreshDisplay(); } }
static void PrepareData(void) { TCHAR sTmp[15]; filter_data.name[0] = _T('\0'); wbName->SetCaption(_T("*")); if (wpDistance) { // initialize datafieldenum for Distance DataFieldEnum* dfe; dfe = (DataFieldEnum*)wpDistance->GetDataField(); dfe->addEnumText(_T("*")); for (unsigned i = 1; i < sizeof(DistanceFilter) / sizeof(DistanceFilter[0]); i++) { _stprintf(sTmp, _T("%.0f%s"), (double)DistanceFilter[i], Units::GetDistanceName()); dfe->addEnumText(sTmp); } dfe->SetAsInteger(filter_data.distance_index); wpDistance->RefreshDisplay(); } InitializeDirection(false); if (wpType) { // initialize datafieldenum for Type DataFieldEnum* dfe; dfe = (DataFieldEnum*)wpType->GetDataField(); dfe->addEnumTexts(TypeFilter); dfe->SetAsInteger(filter_data.type_index); wpType->RefreshDisplay(); } }
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 SetupDeviceFields(const DeviceConfig &config, WndProperty *port_field, WndProperty *speed_field, WndProperty *driver_field, WndButton *setup_button) { #ifndef ANDROID static const TCHAR *const COMMPort[] = { _T("COM1"), _T("COM2"), _T("COM3"), _T("COM4"), _T("COM5"), _T("COM6"), _T("COM7"), _T("COM8"), _T("COM9"), _T("COM10"), _T("COM0"), NULL }; static const TCHAR *const tSpeed[] = { _T("1200"), _T("2400"), _T("4800"), _T("9600"), _T("19200"), _T("38400"), _T("57600"), _T("115200"), NULL }; #endif if (port_field != NULL) { DataFieldEnum *dfe = (DataFieldEnum *)port_field->GetDataField(); for (unsigned i = 0; port_types[i].label != NULL; i++) { dfe->addEnumText(gettext(port_types[i].label)); if (port_types[i].type == config.port_type) dfe->Set(i); } #ifdef ANDROID JNIEnv *env = Java::GetEnv(); jobjectArray bonded = BluetoothHelper::list(env); if (bonded != NULL) { jsize n = env->GetArrayLength(bonded) / 2; for (jsize i = 0; i < n; ++i) { jstring address = (jstring)env->GetObjectArrayElement(bonded, i * 2); if (address == NULL) continue; const char *address2 = env->GetStringUTFChars(address, NULL); if (address2 == NULL) continue; jstring name = (jstring)env->GetObjectArrayElement(bonded, i * 2 + 1); const char *name2 = name != NULL ? env->GetStringUTFChars(name, NULL) : NULL; dfe->addEnumText(address2, name2); env->ReleaseStringUTFChars(address, address2); if (name2 != NULL) env->ReleaseStringUTFChars(name, name2); } env->DeleteLocalRef(bonded); if (config.port_type == DeviceConfig::RFCOMM && !config.bluetooth_mac.empty()) { if (!dfe->Exists(config.bluetooth_mac)) dfe->addEnumText(config.bluetooth_mac); dfe->SetAsString(config.bluetooth_mac); } } #else dfe->addEnumTexts(COMMPort); switch (config.port_type) { case DeviceConfig::SERIAL: dfe->Set(config.port_index + num_port_types); break; case DeviceConfig::DISABLED: case DeviceConfig::RFCOMM: case DeviceConfig::AUTO: case DeviceConfig::INTERNAL: case DeviceConfig::TCP_LISTENER: break; } #endif port_field->RefreshDisplay(); } if (speed_field != NULL) { #ifdef ANDROID speed_field->hide(); #else DataFieldEnum *dfe = (DataFieldEnum *)speed_field->GetDataField(); dfe->addEnumTexts(tSpeed); dfe->Set(config.speed_index); speed_field->RefreshDisplay(); #endif } if (driver_field) { DataFieldEnum *dfe = (DataFieldEnum *)driver_field->GetDataField(); const TCHAR *DeviceName; for (unsigned i = 0; (DeviceName = devRegisterGetName(i)) != NULL; i++) dfe->addEnumText(DeviceName); dfe->Sort(1); dfe->SetAsString(config.driver_name); driver_field->RefreshDisplay(); } if (setup_button != NULL) setup_button->set_visible(config.IsVega()); UpdateDeviceControlVisibility(*port_field, *speed_field, *driver_field); }
static void FillEnums(void) { WndProperty *wp; wp = (WndProperty*)wf->FindByName(_T("prpBaudRateA")); if (wp) { DataFieldEnum* dfe; dfe = (DataFieldEnum*)wp->GetDataField(); dfe->addEnumText(_T("Auto")); dfe->addEnumText(_T("4800")); dfe->addEnumText(_T("9600")); dfe->addEnumText(_T("19200")); dfe->addEnumText(_T("38400")); dfe->addEnumText(_T("57600")); dfe->addEnumText(_T("115200")); dfe->Set(0); wp->RefreshDisplay(); } wp = (WndProperty*)wf->FindByName(_T("prpHasTemperature")); if (wp) { DataFieldEnum* dfe; dfe = (DataFieldEnum*)wp->GetDataField(); dfe->addEnumText(_T("OFF")); dfe->addEnumText(_T("ON")); dfe->addEnumText(_T("AUTO")); dfe->Set(0); wp->RefreshDisplay(); } wp = (WndProperty*)wf->FindByName(_T("prpToneClimbComparisonType")); if (wp) { DataFieldEnum* dfe; dfe = (DataFieldEnum*)wp->GetDataField(); dfe->addEnumText(_T("None")); dfe->addEnumText(_T("Gross>MacCready")); dfe->addEnumText(_T("Gross>Average")); dfe->Set(0); wp->RefreshDisplay(); } wp = (WndProperty*)wf->FindByName(_T("prpToneCruiseLiftDetectionType")); if (wp) { DataFieldEnum* dfe; dfe = (DataFieldEnum*)wp->GetDataField(); dfe->addEnumText(_T("Disabled")); dfe->addEnumText(_T("Relative>0")); dfe->addEnumText(_T("Relative>MacCready/2")); dfe->addEnumText(_T("Gross>0")); dfe->addEnumText(_T("Net>MacCready/2")); dfe->addEnumText(_T("Relative>MacCready")); dfe->addEnumText(_T("Net>MacCready")); dfe->Set(0); wp->RefreshDisplay(); } wp = (WndProperty*)wf->FindByName(_T("prpVarioTimeConstantCircling")); if (wp) { DataFieldEnum* dfe; dfe = (DataFieldEnum*)wp->GetDataField(); dfe->addEnumText(_T(" 1.0s")); dfe->addEnumText(_T(" 1.3s")); dfe->addEnumText(_T(" 1.8s")); dfe->addEnumText(_T(" 2.7s")); dfe->Set(0); wp->RefreshDisplay(); } wp = (WndProperty*)wf->FindByName(_T("prpVarioTimeConstantCruise")); if (wp) { DataFieldEnum* dfe; dfe = (DataFieldEnum*)wp->GetDataField(); dfe->addEnumText(_T(" 1.0s")); dfe->addEnumText(_T(" 1.3s")); dfe->addEnumText(_T(" 1.8s")); dfe->addEnumText(_T(" 2.7s")); dfe->Set(0); wp->RefreshDisplay(); } wp = (WndProperty*)wf->FindByName(_T("prpToneAveragerVarioTimeScale")); if (wp) { DataFieldEnum* dfe; dfe = (DataFieldEnum*)wp->GetDataField(); dfe->addEnumText(_T(" 0.0s")); dfe->addEnumText(_T(" 0.8s")); dfe->addEnumText(_T(" 1.7s")); dfe->addEnumText(_T(" 3.5s")); dfe->addEnumText(_T(" 7.5s")); dfe->addEnumText(_T("15.0s")); dfe->addEnumText(_T("30.0s")); dfe->Set(0); wp->RefreshDisplay(); } wp = (WndProperty*)wf->FindByName(_T("prpToneAveragerCruiseTimeScale")); if (wp) { DataFieldEnum* dfe; dfe = (DataFieldEnum*)wp->GetDataField(); dfe->addEnumText(_T(" 0.0s")); dfe->addEnumText(_T(" 0.8s")); dfe->addEnumText(_T(" 1.7s")); dfe->addEnumText(_T(" 3.5s")); dfe->addEnumText(_T(" 7.5s")); dfe->addEnumText(_T("15.0s")); dfe->addEnumText(_T("30.0s")); dfe->Set(0); wp->RefreshDisplay(); } wp = (WndProperty*)wf->FindByName(_T("prpToneDeadbandCirclingType")); if (wp) { DataFieldEnum* dfe; dfe = (DataFieldEnum*)wp->GetDataField(); dfe->addEnumText(_T("Step")); dfe->addEnumText(_T("Ramp")); dfe->Set(0); wp->RefreshDisplay(); } wp = (WndProperty*)wf->FindByName(_T("prpToneDeadbandCruiseType")); if (wp) { DataFieldEnum* dfe; dfe = (DataFieldEnum*)wp->GetDataField(); dfe->addEnumText(_T("Step")); dfe->addEnumText(_T("Ramp")); dfe->Set(0); wp->RefreshDisplay(); } wp = (WndProperty*)wf->FindByName(_T("prpFlarmUserInterface")); if (wp) { DataFieldEnum* dfe; dfe = (DataFieldEnum*)wp->GetDataField(); dfe->addEnumTexts(flarm_user_interfaces); dfe->Set(0); wp->RefreshDisplay(); } wp = (WndProperty*)wf->FindByName(_T("prpFlarmAircraftType")); if (wp) { DataFieldEnum* dfe; dfe = (DataFieldEnum*)wp->GetDataField(); dfe->addEnumTexts(flarm_aircraft_types); dfe->Set(0); wp->RefreshDisplay(); } wp = (WndProperty*)wf->FindByName(_T("prpNeedleGaugeType")); if (wp) { DataFieldEnum* dfe; dfe = (DataFieldEnum*)wp->GetDataField(); dfe->addEnumTexts(needle_gauge_types); dfe->Set(0); wp->RefreshDisplay(); } FillAllAudioEnums(); }