void MGAFinder::CloseDialog() { if (hDlg) { oapiCloseDialog(hDlg); hDlg = NULL; } }
void TabbedDialog::Close () { if (hDlg) { ClearTabs (); oapiCloseDialog (hDlg); hDlg = NULL; Closed (); } }
BOOL CALLBACK MsgProc (HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam) { VOBJ * v = g_UFA.GetFocus(); if (v==NULL) return FALSE; switch (uMsg) { case WM_INITDIALOG: { SendDlgItemMessage(hDlg,IDC_COMBO_AGE,CB_RESETCONTENT, 0, 0); SendDlgItemMessage(hDlg,IDC_COMBO_WEIGHT,CB_RESETCONTENT, 0, 0); char cbuf[255]; for (int i = 0; i < 300; i++) { sprintf(cbuf,"%d",i+1); SendDlgItemMessage(hDlg, IDC_COMBO_AGE, CB_ADDSTRING, 0, (LPARAM)cbuf); SendDlgItemMessage(hDlg, IDC_COMBO_WEIGHT, CB_ADDSTRING, 0, (LPARAM)cbuf); } for (int i = 0; i < NUMBER_OF_MMU_TYPE; i++) { strcpy(cbuf,UmmuMiscID[i]); SendDlgItemMessage(hDlg, IDC_COMBO_ID, CB_ADDSTRING, 0, (LPARAM)cbuf); } return TRUE; } case WM_DESTROY: { return TRUE; } case WM_COMMAND: { switch (LOWORD (wParam)) { case IDCANCEL: { oapiCloseDialog(hDlg); return TRUE; } case IDC_BUTTON_ADD: { // hack, but that's the only way v->crew.SetMaxSeatAvailableInShip(v->crew.GetCrewTotalNumber()+1); char name[255]; char cbuf[255]; int len = GetDlgItemText(hDlg, IDC_EDIT_NAME, name,255); if (len < 1) return FALSE; len = GetDlgItemText(hDlg, IDC_COMBO_AGE, cbuf, 255); if (len < 1) return FALSE; int age = atoi(cbuf); len = GetDlgItemText(hDlg, IDC_COMBO_WEIGHT, cbuf, 255); if (len < 1) return FALSE; int weight = atoi(cbuf); len = GetDlgItemText(hDlg, IDC_COMBO_ID, cbuf, 255); if (len > 4) return FALSE; v->crew.AddCrewMember(name, age, 70, weight, cbuf); char mess[255]; sprintf(mess,"%s %s aged %d added",cbuf,name, age); v->hudprint.insert(mess); return TRUE; } case IDC_BUTTON_SAVE: { char scn[255]; char cfg[255]; char cbuf[255]; int len = GetDlgItemText(hDlg, IDC_EDIT_FILENAME, cbuf, 255); if (len < 1) return FALSE; sprintf(scn,"%s",cbuf); sprintf(cfg,"Scenarios/UMMUFA/%s.cfg",RidSpaces(cbuf)); g_UFA.SpecialSave=TRUE; sprintf(g_UFA.SpecialSaveBuffer,"%s",cfg); sprintf(cbuf,"UMMUFA Save at %.2f seconds from %s",oapiGetSimTime(),VESSEL(v->hook).GetName()); oapiSaveScenario(scn, cbuf); sprintf(cbuf,"%s scenario saved",scn); v->hudprint.insert(cbuf); return TRUE; } } return TRUE; } } return oapiDefDialogProc (hDlg, uMsg, wParam, lParam); }
MFDWindow::~MFDWindow () { oapiCloseDialog (hDlg); if (hBtnFnt) DeleteObject (hBtnFnt); }