Commit before breaking everything
[matches/honours.git] / research / transmission_spectroscopy / TOF / Win32++ / samples / MDIFrameDemo / src / MDIChildSimple.cpp
1 //////////////////////////////////////////////\r
2 // MDIChildSimple.cpp\r
3 //  Definitions for the CViewSimple and CMDIChildSimple classes\r
4 \r
5 #include "stdafx.h"\r
6 #include "MDIChildSimple.h"\r
7 #include "resource.h"\r
8 \r
9 \r
10 // CViewSimple definitions\r
11 CViewSimple::CViewSimple() : m_Color(RGB(0,0,255))\r
12 {\r
13 }\r
14 \r
15 void CViewSimple::OnDraw(CDC* pDC)\r
16 {\r
17         //Centre some text in our view window\r
18         CRect rc = GetClientRect();\r
19         pDC->SetTextColor(m_Color);\r
20         pDC->DrawText(_T("View Window"), -1, rc, DT_CENTER|DT_VCENTER|DT_SINGLELINE);\r
21 }\r
22 \r
23 LRESULT CViewSimple::WndProc(UINT uMsg, WPARAM wParam, LPARAM lParam)\r
24 {\r
25         switch (uMsg)\r
26         {\r
27         case WM_SIZE:\r
28                 // Force the window to be repainted\r
29                 Invalidate();\r
30                 break;          // Also do default processing\r
31         }\r
32 \r
33         // Do default processing for other messages\r
34         return WndProcDefault(uMsg, wParam, lParam);\r
35 }\r
36 \r
37 // CMDIChildSimple definitions\r
38 CMDIChildSimple::CMDIChildSimple()\r
39 {\r
40         HINSTANCE hResource = GetApp()->GetResourceHandle();\r
41         HMENU hChildMenu = LoadMenu(hResource, _T("MdiMenuView"));\r
42         SetHandles(hChildMenu, NULL);\r
43         SetView(m_View);\r
44 }\r
45 \r
46 CMDIChildSimple::~CMDIChildSimple()\r
47 {\r
48 }\r
49 \r
50 void CMDIChildSimple::OnInitialUpdate()\r
51 {\r
52         SetWindowText(_T("Simple Window"));\r
53         SetIconLarge(IDI_VIEW);\r
54         SetIconSmall(IDI_VIEW);\r
55 }\r
56 \r
57 int CMDIChildSimple::OnClose()\r
58 {\r
59         int nResult = MessageBox(_T("OK to close Window?"), _T("File Close"), MB_YESNO);\r
60 \r
61         if (nResult == IDYES)\r
62                 MDIDestroy();\r
63 \r
64         // Return value is either IDYES or IDNO\r
65         return nResult;\r
66 }\r
67 \r
68 BOOL CMDIChildSimple::OnCommand(WPARAM wParam, LPARAM lParam)\r
69 {\r
70         UNREFERENCED_PARAMETER(lParam);\r
71 \r
72         switch (LOWORD(wParam))\r
73         {\r
74         case IDM_COLOR_BLACK:\r
75                 m_View.SetColor(RGB(0,0,0));\r
76                 Invalidate();\r
77                 return TRUE;\r
78         case IDM_COLOR_RED:\r
79                 m_View.SetColor(RGB(255, 0, 0));\r
80                 Invalidate();\r
81                 return TRUE;\r
82         case IDM_COLOR_GREEN:\r
83                 m_View.SetColor(RGB(0, 255, 0));\r
84                 Invalidate();\r
85                 return TRUE;\r
86         case IDM_COLOR_BLUE:\r
87                 m_View.SetColor(RGB(0, 0, 255));\r
88                 Invalidate();\r
89                 return TRUE;\r
90         case IDM_COLOR_WHITE:\r
91                 m_View.SetColor(RGB(255, 255, 255));\r
92                 Invalidate();\r
93                 return TRUE;\r
94         }\r
95 \r
96         return FALSE;\r
97 }\r
98 \r
99 LRESULT CMDIChildSimple::WndProc(UINT uMsg, WPARAM wParam, LPARAM lParam)\r
100 {\r
101         switch (uMsg)\r
102         {\r
103         case WM_CLOSE:\r
104                 return OnClose();       // Don't do default processing\r
105         }\r
106 \r
107         // Do default processing for other messages\r
108         return WndProcDefault(uMsg, wParam, lParam);\r
109 }\r

UCC git Repository :: git.ucc.asn.au