// VespaCad.cpp // VespaCad for MFC // Vesa Lappalainen 21.10.1999 // Vain menut ja About-dialogi toteutettu. Menuista tulee Ei toimi! // #include #include "VespaCad.rh" //----------------------------------------------------------------------------- class CMainWindow : public CFrameWnd { protected: virtual void EiToimi(); public: CMainWindow(); ~CMainWindow() {} virtual void Exit(); virtual void About(); void OnLButtonDown(UINT nFlags,CPoint point); DECLARE_MESSAGE_MAP() }; BEGIN_MESSAGE_MAP( CMainWindow, CFrameWnd ) ON_COMMAND(CM_FILE_OPEN, EiToimi) ON_COMMAND(CM_FILE_SAVE, EiToimi) ON_COMMAND(CM_FILE_EXIT, Exit) ON_COMMAND(CM_ZOOM_2X, EiToimi) ON_COMMAND(CM_ZOOM_2D, EiToimi) ON_COMMAND(CM_HELP_ABOUT, About) ON_COMMAND(CM_HELP_HELP, EiToimi) ON_WM_LBUTTONDOWN() END_MESSAGE_MAP() //----------------------------------------------------------------------------- class CDLG_AboutDlg : public CDialog{ // Tässä tarpeeton, ks. CMainWin::About! public: CDLG_AboutDlg(LPCTSTR name,CWnd *Parent): CDialog(name,Parent) {}; virtual void Ok(); DECLARE_MESSAGE_MAP() }; BEGIN_MESSAGE_MAP( CDLG_AboutDlg, CDialog ) ON_COMMAND(IDOK, Ok) END_MESSAGE_MAP() //-------------------- CDLG_AboutDlg metodit: --------------------------------- void CDLG_AboutDlg::Ok() { EndDialog(0); } //----------------------------------------------------------------------------- CMainWindow::CMainWindow() { Create(NULL,"VespaCad"); LoadAccelTable("PIKA"); CMenu menu; menu.LoadMenu("PAAMENU"); SetMenu(&menu); menu.Detach(); } void CMainWindow::EiToimi() { MessageBox("Ei toimi vielä","Ei toimi",MB_OK); } void CMainWindow::Exit() { DestroyWindow(); } void CMainWindow::About() { // Tosin voitaisiin kutsua suoraan geneeristä CDialog ja jättää // koko CDLG_AboutDlg luokka pois! // CDialog dlg("DLG_ABOUT",this); CDLG_AboutDlg dlg("DLG_ABOUT",this); dlg.DoModal(); } void CMainWindow::OnLButtonDown(UINT ,CPoint point) { CDC *dc = new CClientDC(this); dc->LineTo(point); delete dc; } //----------------------------------------------------------------------------- class CVespaCadApp : public CWinApp { public: virtual BOOL InitInstance() { m_pMainWnd = new CMainWindow(); m_pMainWnd->ShowWindow(m_nCmdShow); m_pMainWnd->UpdateWindow(); m_pMainWnd->SetIcon(LoadIcon("IKONI"),TRUE); return TRUE; } }; CVespaCadApp VespaCadApp; // constructor initializes and runs the app