Example #1
0
int dlgAirspacePatternsShowModal(void){
  if (!Layout::landscape) {
    wf = LoadDialog(CallBackTable,
                        XCSoarInterface::main_window,
                        _T("IDR_XML_AIRSPACEPATTERNS_L"));
  } else {
    wf = LoadDialog(CallBackTable,
                        XCSoarInterface::main_window,
                        _T("IDR_XML_AIRSPACEPATTERNS"));
  }

  if (!wf)
    return -1;

  assert(wf!=NULL);

  WndListFrame *wAirspacePatternsList =
    (WndListFrame*)wf->FindByName(_T("frmAirspacePatternsList"));
  assert(wAirspacePatternsList!=NULL);
  wAirspacePatternsList->SetActivateCallback(OnAirspacePatternsListEnter);
  wAirspacePatternsList->SetPaintItemCallback(OnAirspacePatternsPaintListItem);
  wAirspacePatternsList->SetLength(NUMAIRSPACEBRUSHES);

  int result = wf->ShowModal();
  result = result == mrOK
    ? (int)wAirspacePatternsList->GetCursorIndex()
    : -1;

  // now retrieve back the properties...
  delete wf;
  wf = NULL;

  return result;
}