/*matriisi.c*/ /*************************************************************************** ** Globaalit muuttujat: ** HWND PaahWnd - pääikkunan kahva ** winlin.h:ssa: ** tGkertoimet G={x1,x2,y1,y2} ** - tähän luetaan matriisiin kirjoitetut kertoimet ** Viestien käsittelytaulukko MatTbl: ** [ret]:ia painaessa pääikkunalle lähetetään viesti, joka huolehtii ** taas eteenpäin kuvauksen kuvautumisen. ** NAPSI_LUVUT-viesti lukee matriisin kertoimet G:hen. Jos ei saa ** luettua, laitetaan kertoimeksi 0. ****************************************************************************/ #include #include #include #include "tabhand.h" #include "mdialog.h" #include "portable.h" #include "winlin.h" extern HWND PaahWnd; /***************************************************************************/ static LONG WM_idok(tMSGParam *msg) { (void)msg; LAHETA_VIESTI(PaahWnd,ANTI); return 0; } /***************************************************************************/ static LONG WM_command_NAPSI_LUVUT(tMSGParam *msg) { char s[10]; GetDlgItemText(msg->hWnd,IDC_EDIT4,s,sizeof(s)); if (sscanf(s,"%lf",&G.x1)!=1) { SetDlgItemInt(msg->hWnd,IDC_EDIT4,0,TRUE); G.x1=0; } GetDlgItemText(msg->hWnd,IDC_EDIT1,s,sizeof(s)); if (sscanf(s,"%lf",&G.y1)!=1) { SetDlgItemInt(msg->hWnd,IDC_EDIT1,0,TRUE); G.y1=0; } GetDlgItemText(msg->hWnd,IDC_EDIT2,s,sizeof(s)); if (sscanf(s,"%lf",&G.x2)!=1) { SetDlgItemInt(msg->hWnd,IDC_EDIT2,0,TRUE); G.x2=0; } GetDlgItemText(msg->hWnd,IDC_EDIT3,s,sizeof(s)); if (sscanf(s,"%lf",&G.y2)!=1) { SetDlgItemInt(msg->hWnd,IDC_EDIT3,0,TRUE); G.y2=0; } return 0; } /***************************************************************************/ tMSGEntry MatTbl[] = { { WM_COMMAND , NAPSI_LUVUT , DoC , WM_command_NAPSI_LUVUT }, { WM_COMMAND , IDOK , DoC , WM_idok }, { 0 } };