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(); } }
static void InitializeDirection(bool only_heading) { // initialize datafieldenum for Direction if (direction_filter) { DataFieldEnum* data_field = (DataFieldEnum*)direction_filter->GetDataField(); if (!only_heading) { for (unsigned int i = 0; i < ARRAY_SIZE(direction_filter_items); i++) data_field->addEnumText(GetDirectionData(i)); data_field->SetAsInteger(filter_data.direction_index); } // update heading value to current heading data_field->replaceEnumText(1,GetDirectionData(1)); direction_filter->RefreshDisplay(); } }
static DataField * CreateDirectionDataField(DataFieldListener *listener) { TCHAR buffer[12]; DataFieldEnum *df = new DataFieldEnum(listener); for (unsigned i = 0; i < ARRAY_SIZE(direction_filter_items); i++) df->addEnumText(GetDirectionData(buffer, ARRAY_SIZE(buffer), i)); df->Set(dialog_state.direction_index); return df; }
void WaypointFilterWidget::Update() { WndProperty &direction_control = GetControl(DIRECTION); DataFieldEnum &direction_df = *(DataFieldEnum *) direction_control.GetDataField(); TCHAR buffer[12]; direction_df.replaceEnumText(1, GetDirectionData(buffer, ARRAY_SIZE(buffer), 1)); direction_control.RefreshDisplay(); }