Commit before breaking everything
[matches/honours.git] / research / transmission_spectroscopy / TOF / Win32++ / samples / Splitter / src / Mainfrm.cpp
1 ////////////////////////////////////////////////////\r
2 // Mainfrm.cpp  - definitions for the CMainFrame class\r
3 \r
4 #include "stdafx.h"\r
5 #include "mainfrm.h"\r
6 #include "resource.h"\r
7 \r
8 \r
9 CMainFrame::CMainFrame()\r
10 {\r
11         SetView(m_MainView);\r
12 \r
13         // Set the registry key name, and load the initial window position\r
14         // Use a registry key name like "CompanyName\\Application"\r
15         LoadRegistrySettings(_T("Win32++\\Splitter Sample"));\r
16 }\r
17 \r
18 CMainFrame::~CMainFrame()\r
19 {\r
20 }\r
21 \r
22 BOOL CMainFrame::OnCommand(WPARAM wParam, LPARAM lParam)\r
23 {\r
24         UNREFERENCED_PARAMETER(lParam);\r
25 \r
26         switch(LOWORD(wParam))\r
27         {\r
28         case IDM_FILE_EXIT:\r
29                 ::PostMessage(m_hWnd, WM_CLOSE, 0, 0);\r
30                 return TRUE;\r
31         case IDM_VIEW_TEXT:\r
32                 OnViewText();\r
33                 break;\r
34         case IDM_VIEW_LIST:\r
35                 OnViewList();\r
36                 break;\r
37         case IDW_VIEW_STATUSBAR:\r
38                 OnViewStatusBar();\r
39                 return TRUE;\r
40         case IDW_VIEW_TOOLBAR:\r
41                 OnViewToolBar();\r
42                 return TRUE;\r
43         case IDM_HELP_ABOUT:\r
44                 OnHelp();\r
45                 return TRUE;\r
46         }\r
47         return FALSE;\r
48 }\r
49 \r
50 void CMainFrame::OnInitialUpdate()\r
51 {\r
52         // Set the styles for splitter panes\r
53         DWORD dwStyle = DS_NO_UNDOCK | DS_NO_CAPTION | DS_CLIENTEDGE;\r
54         m_MainView.SetDockStyle(dwStyle);\r
55 \r
56         CRect rcView = GetViewRect();\r
57 \r
58         // Add the bottom pane first. It is a child of the main pane.\r
59         m_pDockTree = (CDockTree*)m_MainView.AddDockedChild(new CDockTree, dwStyle|DS_DOCKED_BOTTOM, rcView.Height()/2);\r
60 \r
61         // Add the bottom right pane. It is a child of the bottom pane \r
62         m_pDockList = (CDockList*)m_pDockTree->AddDockedChild(new CDockList, dwStyle|DS_DOCKED_RIGHT, rcView.Width()/2);\r
63 \r
64         // Add the top right pane. It is a child of the main pane.\r
65         m_pDockText = (CDockText*)m_MainView.AddDockedChild(new CDockText, dwStyle|DS_DOCKED_RIGHT, rcView.Width()/2);\r
66 \r
67 }\r
68 \r
69 void CMainFrame::OnViewList()\r
70 {\r
71         DWORD dwStyle = DS_NO_UNDOCK | DS_NO_CAPTION | DS_CLIENTEDGE;\r
72         if (m_pDockList->IsDocked())\r
73         {\r
74                 m_pDockList->Hide();\r
75                 GetFrameMenu().CheckMenuItem(IDM_VIEW_LIST, MF_UNCHECKED);\r
76         }\r
77         else\r
78         {\r
79                 m_pDockTree->Dock(m_pDockList, dwStyle | DS_DOCKED_RIGHT);\r
80                 GetFrameMenu().CheckMenuItem(IDM_VIEW_LIST, MF_CHECKED);\r
81         }\r
82 }\r
83 \r
84 void CMainFrame::OnViewText()\r
85 {\r
86         DWORD dwStyle = DS_NO_UNDOCK | DS_NO_CAPTION | DS_CLIENTEDGE;\r
87 \r
88         if (m_pDockText->IsDocked())\r
89         {\r
90                 m_pDockText->Hide();\r
91                 GetFrameMenu().CheckMenuItem(IDM_VIEW_TEXT, MF_UNCHECKED);\r
92         }\r
93         else\r
94         {\r
95                 m_MainView.Dock(m_pDockText, dwStyle | DS_DOCKED_RIGHT);\r
96                 GetFrameMenu().CheckMenuItem(IDM_VIEW_TEXT, MF_CHECKED);\r
97         }\r
98 }\r
99 \r
100 void CMainFrame::SetupToolBar()\r
101 {       \r
102         // Define the resource IDs for the toolbar\r
103         AddToolBarButton( IDM_FILE_NEW   );\r
104         AddToolBarButton( IDM_FILE_OPEN  );\r
105         AddToolBarButton( IDM_FILE_SAVE  );\r
106         AddToolBarButton( 0 );                          // Separator\r
107         AddToolBarButton( IDM_EDIT_CUT   );\r
108         AddToolBarButton( IDM_EDIT_COPY  );\r
109         AddToolBarButton( IDM_EDIT_PASTE );\r
110         AddToolBarButton( 0 );                          // Separator\r
111         AddToolBarButton( IDM_FILE_PRINT );\r
112         AddToolBarButton( 0 );                          // Separator\r
113         AddToolBarButton( IDM_HELP_ABOUT );\r
114 }\r
115 \r
116 LRESULT CMainFrame::WndProc(UINT uMsg, WPARAM wParam, LPARAM lParam)\r
117 {\r
118 //      switch (uMsg)\r
119 //      {\r
120 //              Add case statements for each messages to be handled here\r
121 //      }\r
122 \r
123         // pass unhandled messages on for default processing\r
124         return WndProcDefault(uMsg, wParam, lParam);\r
125 }\r
126 \r

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