|
|
1.1 root 1: // ctrltest.cpp : Dialogs and Controls test applet
2: //
3: // This is a part of the Microsoft Foundation Classes C++ library.
4: // Copyright (C) 1992 Microsoft Corporation
5: // All rights reserved.
6: //
7: // This source code is only intended as a supplement to the
8: // Microsoft Foundation Classes Reference and Microsoft
9: // QuickHelp documentation provided with the library.
10: // See these sources for detailed information regarding the
11: // Microsoft Foundation Classes product.
12:
13: #include "ctrltest.h"
14:
15: /////////////////////////////////////////////////////////////////////////////
16: // Main Window
17:
18: BEGIN_MESSAGE_MAP(CTestWindow, CFrameWnd)
19: ON_COMMAND(IDM_EXIT, OnExit)
20: ON_COMMAND(IDM_ABOUT, OnAbout)
21: // simple
22: ON_COMMAND(IDM_TEST_DERIVED_EDIT, OnTestDerivedEdit)
23: ON_COMMAND(IDM_TEST_WNDCLASS_EDIT, OnTestWndClassEdit)
24: ON_COMMAND(IDM_TEST_SUB_EDIT, OnTestSubclassedEdit)
25: #ifndef _NTWIN
26: // pen
27: ON_COMMAND(IDM_TEST_PENEDIT_CODE, OnTestPenEditFromCode)
28: ON_COMMAND(IDM_TEST_PENEDIT_TEMPLATE, OnTestPenEditFromTemplate)
29: ON_COMMAND(IDM_TEST_PENEDIT_FEATURES, OnTestPenEditFeatures)
30: #endif
31: // custom
32: ON_COMMAND(IDM_TEST_BITMAP_BUTTON1, OnTestBitmapButton1)
33: ON_COMMAND(IDM_TEST_BITMAP_BUTTON2, OnTestBitmapButton2)
34: ON_COMMAND(IDM_TEST_CUSTOM_LIST, OnTestCustomList)
35: ON_COMMAND(IDM_TEST_SPIN_EDIT, OnTestSpinEdit)
36: END_MESSAGE_MAP()
37:
38: void CTestWindow::SetupMenus()
39: {
40: if ((GetSystemMetrics(SM_PENWINDOWS)) == NULL)
41: {
42: CMenu* pMenu = GetMenu();
43: ASSERT(pMenu != NULL);
44: pMenu->EnableMenuItem(IDM_TEST_PENEDIT_CODE, MF_DISABLED|MF_GRAYED);
45: pMenu->EnableMenuItem(IDM_TEST_PENEDIT_TEMPLATE, MF_DISABLED|MF_GRAYED);
46: pMenu->EnableMenuItem(IDM_TEST_PENEDIT_FEATURES, MF_DISABLED|MF_GRAYED);
47: }
48: // do not test for spin control until the user tries it
49: // if the custom control DLL is not present, the test spin
50: // control menu item will be disabled in 'OnTestSpinEdit'.
51:
52: // custom menu tests
53: AttachCustomMenu();
54: }
55:
56: void CTestWindow::OnExit()
57: {
58: SendMessage(WM_CLOSE);
59: }
60:
61: void CTestWindow::OnAbout()
62: {
63: CModalDialog dlg(IDD_ABOUT);
64: dlg.DoModal();
65: }
66:
67:
68: /////////////////////////////////////////////////////////////////////////////
69: // Application class
70:
71: class CTestApp : public CWinApp
72: {
73: protected:
74: CTestWindow m_window;
75: // instead of allocating a new main window, you can embed it
76: // if you like
77: public:
78: virtual BOOL InitInstance();
79: };
80:
81: CTestApp theTestApp;
82:
83: BOOL CTestApp::InitInstance()
84: {
85: if (!m_window.Create(NULL, "Control Test App",
86: WS_OVERLAPPEDWINDOW, CFrameWnd::rectDefault, NULL,
87: MAKEINTRESOURCE(AFX_IDI_STD_FRAME)/*menu*/))
88: return FALSE;
89:
90: m_pMainWnd = &m_window;
91: m_window.SetupMenus();
92: m_window.ShowWindow(m_nCmdShow);
93: return TRUE;
94: }
95:
96: void CTestWindow::PostNcDestroy()
97: {
98: // don't delete this
99: }
100:
101: /////////////////////////////////////////////////////////////////////////////
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.