Code:
switch (uMsg)
{
case WM_CREATE:
{
/* Create timer to refresh screen */
SetTimer(hwnd, IDT_REFRESH, REFRESHTIME,(TIMERPROC) NULL);
/* Create edit controls */
EditBoxes(hwnd, cs);
/* Create radio buttons */
RadioButtons(hwnd, cs);
}
return 0;
case WM_PAINT:
{
hdc=BeginPaint(hwnd, &pntS);
/* *** User Interface *** */
DrawArea(hwnd, hdc, colors);
RadioButtonsText(hwnd, hdc, polarLbl, stdFont);
TargetText(hwnd, targetLbl, sqm, mtrs, hdc, stdFont);
GenParams(hwnd, genPara, fareRng, dpRng, hdc, stdFont);
RadaAntennaText(hwnd, rdrAntenaLbl, deg, db, halfMin, mtrs, hdc, stdFont);
DisplayResultsBox(hwnd, hdc, rdrTrans_recv, targetLbl, rsltFont);
RadarReceiverText(hwnd, rdrTrans_recv, hz, mhz, mtrs, kw, usec, db, wvlnthFig, hdc, stdFont);
// Calculate & show results
output = ProcessData(hwnd);
DisplayResults(hwnd, hdc, &output, rsltFont);
EndPaint(hwnd, &pntS);
}
return 0;
case WM_COMMAND:
{
// Listen to the input commands
switch( LOWORD(wParam) )
{
case ID_FILE_EXIT:
{
PostMessage(hwnd, WM_CLOSE, 0, 0);
break;
}
case ID_EDIT_CLEAR01:
{
ClearEditControls(hwnd, indata);
break;
}
case ID_FILE_OPEN01:
{
// Load data from file to edit controls
DoFileOpen(hwnd);
SetValues(hwnd, &indata);
break;
}
case ID_FILE_SAVEAS:
{
// Save data on edit controls to file
DoFileSaveAs(hwnd);
break;
}
case ID_FILE_SAVE01:
{
// Save data on edit controls to file
WriteToFile(hwnd, "RFSDataFile.dat");
break;
}
}
}
return 0;
case WM_GETDLGCODE:
{
break;
}
case WM_TIMER:
{
// Refresh screen
InvalidateRect (hwnd, NULL, TRUE);
UpdateWindow(hwnd);
}
break;
case WM_DESTROY:
KillTimer(hwnd, IDT_REFRESH);
PostQuitMessage(0);
return 0;
default:
//let system deal with msg
return DefWindowProc(hwnd,uMsg,wParam,lParam);
}