--- /dev/null
+///////////////////////////////////////\r
+// MyDialog.cpp\r
+\r
+#include "stdafx.h"\r
+#include "MyDialog.h"\r
+#include "resource.h"\r
+\r
+\r
+/////////////////////////////////////////////\r
+// Definitions for the CButtonDialog class\r
+//\r
+CButtonDialog::CButtonDialog(UINT nResID, CWnd* pParent) : CDialog(nResID, pParent) \r
+{\r
+ m_Brush.CreateSolidBrush(RGB(255, 255, 255));\r
+}\r
+\r
+CButtonDialog::~CButtonDialog() \r
+{\r
+}\r
+\r
+INT_PTR CButtonDialog::DialogProc(UINT uMsg, WPARAM wParam, LPARAM lParam)\r
+{\r
+ switch (uMsg)\r
+ {\r
+ // Set the background color of the dialog\r
+ case WM_CTLCOLORDLG:\r
+ if (IsXPThemed()) return (INT_PTR)m_Brush.GetHandle();\r
+ break;\r
+ \r
+ // Set the background color of static controls\r
+ case WM_CTLCOLORSTATIC:\r
+ if (IsXPThemed()) return (INT_PTR)m_Brush.GetHandle();\r
+ break;\r
+ \r
+ }\r
+ // Pass unhandled messages on to parent DialogProc\r
+ return DialogProcDefault(uMsg, wParam, lParam);\r
+}\r
+\r
+BOOL CButtonDialog::OnCommand(WPARAM wParam, LPARAM lParam)\r
+{\r
+ UNREFERENCED_PARAMETER(lParam);\r
+\r
+ switch (LOWORD(wParam))\r
+ {\r
+ case IDC_BUTTON1:\r
+ TRACE(_T("Push Button Pressed\n"));\r
+ return TRUE;\r
+ case IDC_RADIO1:\r
+ TRACE(_T("Radio Button 1\n"));\r
+ return TRUE;\r
+ case IDC_RADIO2:\r
+ TRACE(_T("Radio Button 2\n"));\r
+ return TRUE;\r
+ case IDC_RADIO3:\r
+ TRACE(_T("Radio Button 3\n"));\r
+ return TRUE;\r
+ case IDC_CHECK1:\r
+ TRACE(_T("Check Box 1\n"));\r
+ return TRUE;\r
+ case IDC_CHECK2:\r
+ TRACE(_T("Check Box 2\n"));\r
+ return TRUE;\r
+ case IDC_CHECK3:\r
+ TRACE(_T("Check Box 3\n"));\r
+ return TRUE;\r
+ } //switch (LOWORD(wParam))\r
+\r
+ return FALSE;\r
+}\r
+\r
+/////////////////////////////////////////////\r
+// Definitions for the CComboBoxDialog class\r
+//\r
+CComboBoxDialog::CComboBoxDialog(UINT nResID, CWnd* pParent) : CDialog(nResID, pParent) \r
+{\r
+ m_Brush.CreateSolidBrush(RGB(255, 255, 255));\r
+}\r
+\r
+CComboBoxDialog::~CComboBoxDialog() \r
+{\r
+}\r
+\r
+INT_PTR CComboBoxDialog::DialogProc(UINT uMsg, WPARAM wParam, LPARAM lParam)\r
+{\r
+ switch (uMsg)\r
+ {\r
+ // Set the background color of the dialog\r
+ case WM_CTLCOLORDLG:\r
+ if (IsXPThemed()) return (INT_PTR)m_Brush.GetHandle();\r
+ break;\r
+ \r
+ // Set the background color of static controls\r
+ case WM_CTLCOLORSTATIC:\r
+ if (IsXPThemed()) return (INT_PTR)m_Brush.GetHandle();\r
+ break;\r
+ \r
+ }\r
+ // Pass unhandled messages on to parent DialogProc\r
+ return DialogProcDefault(uMsg, wParam, lParam);\r
+}\r
+\r
+BOOL CComboBoxDialog::OnInitDialog()\r
+{\r
+ // Put some text in the Combo Boxes\r
+ for (int i = 0 ; i < 6 ; i++)\r
+ {\r
+ SendDlgItemMessage(IDC_COMBO1, CB_ADDSTRING, 0, (LPARAM) _T("C Box 1"));\r
+ SendDlgItemMessage(IDC_COMBO2, CB_ADDSTRING, 0, (LPARAM) _T("C Box 2"));\r
+ SendDlgItemMessage(IDC_COMBO3, CB_ADDSTRING, 0, (LPARAM) _T("C Box 3"));\r
+ }\r
+\r
+ return TRUE;\r
+}\r
+\r
+/////////////////////////////////////////\r
+// Definitions for the CMyDialog class\r
+//\r
+CMyDialog::CMyDialog(UINT nResID, CWnd* pParent) : CDialog(nResID, pParent)\r
+{\r
+}\r
+\r
+CMyDialog::~CMyDialog()\r
+{\r
+}\r
+\r
+INT_PTR CMyDialog::DialogProc(UINT uMsg, WPARAM wParam, LPARAM lParam)\r
+{\r
+ switch (uMsg)\r
+ {\r
+ case WM_DESTROY:\r
+ ::PostQuitMessage(0);\r
+ break;\r
+ }\r
+\r
+ // Pass unhandled messages on to parent DialogProc\r
+ return DialogProcDefault(uMsg, wParam, lParam);\r
+}\r
+\r
+BOOL CMyDialog::OnInitDialog()\r
+{\r
+ // Set the Icon\r
+ SetIconLarge(IDW_MAIN);\r
+ SetIconSmall(IDW_MAIN);\r
+ \r
+ AttachItem(IDC_TAB1, m_Tab);\r
+ m_Tab.AddTabPage(new CButtonDialog(IDD_BUTTONS), _T("Button Dialog"));\r
+ m_Tab.AddTabPage(new CComboBoxDialog(IDD_COMBOBOXES), _T("ComboBox Dialog"));\r
+ m_Tab.SelectPage(0);\r
+\r
+ return true;\r
+}\r
+\r
+void CMyDialog::OnOK()\r
+{\r
+ // This is called when the Enter key is pressed\r
+\r
+ // Do default action (i.e. close the dialog)\r
+ CDialog::OnOK();\r
+}\r
+\r