コード例 #1
0
ファイル: dlgWayPointSelect.cpp プロジェクト: hnpilot/XCSoar
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();
  }
}
コード例 #2
0
ファイル: dlgWaypointSelect.cpp プロジェクト: mobotics/XCSoar
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();
  }
}
コード例 #3
0
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;
}
コード例 #4
0
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();
}