Commit before breaking everything
[matches/honours.git] / research / transmission_spectroscopy / TOF / Win32++ / samples / MDIFrameDemo / src / MDIChildSimple.cpp
diff --git a/research/transmission_spectroscopy/TOF/Win32++/samples/MDIFrameDemo/src/MDIChildSimple.cpp b/research/transmission_spectroscopy/TOF/Win32++/samples/MDIFrameDemo/src/MDIChildSimple.cpp
new file mode 100644 (file)
index 0000000..c612b39
--- /dev/null
@@ -0,0 +1,109 @@
+//////////////////////////////////////////////\r
+// MDIChildSimple.cpp\r
+//  Definitions for the CViewSimple and CMDIChildSimple classes\r
+\r
+#include "stdafx.h"\r
+#include "MDIChildSimple.h"\r
+#include "resource.h"\r
+\r
+\r
+// CViewSimple definitions\r
+CViewSimple::CViewSimple() : m_Color(RGB(0,0,255))\r
+{\r
+}\r
+\r
+void CViewSimple::OnDraw(CDC* pDC)\r
+{\r
+       //Centre some text in our view window\r
+       CRect rc = GetClientRect();\r
+       pDC->SetTextColor(m_Color);\r
+       pDC->DrawText(_T("View Window"), -1, rc, DT_CENTER|DT_VCENTER|DT_SINGLELINE);\r
+}\r
+\r
+LRESULT CViewSimple::WndProc(UINT uMsg, WPARAM wParam, LPARAM lParam)\r
+{\r
+       switch (uMsg)\r
+       {\r
+       case WM_SIZE:\r
+               // Force the window to be repainted\r
+               Invalidate();\r
+               break;          // Also do default processing\r
+       }\r
+\r
+       // Do default processing for other messages\r
+       return WndProcDefault(uMsg, wParam, lParam);\r
+}\r
+\r
+// CMDIChildSimple definitions\r
+CMDIChildSimple::CMDIChildSimple()\r
+{\r
+       HINSTANCE hResource = GetApp()->GetResourceHandle();\r
+       HMENU hChildMenu = LoadMenu(hResource, _T("MdiMenuView"));\r
+       SetHandles(hChildMenu, NULL);\r
+       SetView(m_View);\r
+}\r
+\r
+CMDIChildSimple::~CMDIChildSimple()\r
+{\r
+}\r
+\r
+void CMDIChildSimple::OnInitialUpdate()\r
+{\r
+       SetWindowText(_T("Simple Window"));\r
+       SetIconLarge(IDI_VIEW);\r
+       SetIconSmall(IDI_VIEW);\r
+}\r
+\r
+int CMDIChildSimple::OnClose()\r
+{\r
+       int nResult = MessageBox(_T("OK to close Window?"), _T("File Close"), MB_YESNO);\r
+\r
+       if (nResult == IDYES)\r
+               MDIDestroy();\r
+\r
+       // Return value is either IDYES or IDNO\r
+       return nResult;\r
+}\r
+\r
+BOOL CMDIChildSimple::OnCommand(WPARAM wParam, LPARAM lParam)\r
+{\r
+       UNREFERENCED_PARAMETER(lParam);\r
+\r
+       switch (LOWORD(wParam))\r
+       {\r
+       case IDM_COLOR_BLACK:\r
+               m_View.SetColor(RGB(0,0,0));\r
+               Invalidate();\r
+               return TRUE;\r
+       case IDM_COLOR_RED:\r
+               m_View.SetColor(RGB(255, 0, 0));\r
+               Invalidate();\r
+               return TRUE;\r
+       case IDM_COLOR_GREEN:\r
+               m_View.SetColor(RGB(0, 255, 0));\r
+               Invalidate();\r
+               return TRUE;\r
+       case IDM_COLOR_BLUE:\r
+               m_View.SetColor(RGB(0, 0, 255));\r
+               Invalidate();\r
+               return TRUE;\r
+       case IDM_COLOR_WHITE:\r
+               m_View.SetColor(RGB(255, 255, 255));\r
+               Invalidate();\r
+               return TRUE;\r
+       }\r
+\r
+       return FALSE;\r
+}\r
+\r
+LRESULT CMDIChildSimple::WndProc(UINT uMsg, WPARAM wParam, LPARAM lParam)\r
+{\r
+       switch (uMsg)\r
+       {\r
+       case WM_CLOSE:\r
+               return OnClose();       // Don't do default processing\r
+       }\r
+\r
+       // Do default processing for other messages\r
+       return WndProcDefault(uMsg, wParam, lParam);\r
+}\r

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