home *** CD-ROM | disk | FTP | other *** search
- // This is a part of the Microsoft Foundation Classes C++ library.
- // Copyright (C) 1992-1998 Microsoft Corporation
- // All rights reserved.
- //
- // This source code is only intended as a supplement to the
- // Microsoft Foundation Classes Reference and related
- // electronic documentation provided with the library.
- // See these sources for detailed information regarding the
- // Microsoft Foundation Classes product.
-
- #include "stdafx.h"
-
- #ifdef AFX_INIT_SEG
- #pragma code_seg(AFX_INIT_SEG)
- #endif
-
- #ifdef _DEBUG
- #undef THIS_FILE
- static char THIS_FILE[] = __FILE__;
- #endif
-
- #ifndef _AFX_NO_CTL3D_SUPPORT
-
- #include "ctl3d.h"
- #pragma comment(lib, "ctl3d32s.lib")
-
- /////////////////////////////////////////////////////////////////////////////
- // Support for CTL3D32.LIB (3D controls static library)
-
- BOOL CWinApp::Enable3dControlsStatic()
- {
- ASSERT(!afxContextIsDLL); // Should only be called by apps
-
- // 3d controls and dialogs are automatic on newer versions of Windows
- if (afxData.bWin4)
- return TRUE;
-
- // otherwise, attempt to load CTL3D32.DLL
- _AFX_CTL3D_STATE* pCtl3dState = _afxCtl3dState;
- if (!pCtl3dState->m_bCtl3dInited)
- {
- // get address of Ctl3d functions
- pCtl3dState->m_pfnRegister = &Ctl3dRegister;
- pCtl3dState->m_pfnUnregister = &Ctl3dUnregister;
- pCtl3dState->m_pfnAutoSubclass = &Ctl3dAutoSubclass;
- pCtl3dState->m_pfnUnAutoSubclass = &Ctl3dUnAutoSubclass;
- pCtl3dState->m_pfnColorChange = &Ctl3dColorChange;
- pCtl3dState->m_pfnSubclassDlgEx = &Ctl3dSubclassDlgEx;
- pCtl3dState->m_pfnWinIniChange = &Ctl3dWinIniChange;
- pCtl3dState->m_pfnSubclassCtl = &Ctl3dSubclassCtl;
- pCtl3dState->m_pfnSubclassCtlEx = &Ctl3dSubclassCtlEx;
-
- // may be incorrect version -- check for errors
- if (!pCtl3dState->m_pfnRegister(AfxGetInstanceHandle()))
- {
- // don't want to be partially initialized
- pCtl3dState->m_pfnRegister = NULL;
- pCtl3dState->m_pfnUnregister = NULL;
- pCtl3dState->m_pfnAutoSubclass = NULL;
- pCtl3dState->m_pfnUnAutoSubclass = NULL;
- pCtl3dState->m_pfnColorChange = NULL;
- pCtl3dState->m_pfnSubclassDlgEx = NULL;
- pCtl3dState->m_pfnWinIniChange = NULL;
- pCtl3dState->m_pfnSubclassCtl = NULL;
- pCtl3dState->m_pfnSubclassCtlEx = NULL;
- }
- pCtl3dState->m_bCtl3dInited = TRUE;
- }
-
- if (pCtl3dState->m_pfnAutoSubclass == NULL)
- return FALSE;
-
- // turn on auto subclassing (for primary thread)
- return (*pCtl3dState->m_pfnAutoSubclass)(AfxGetInstanceHandle());
- }
-
- #endif //!_AFX_NO_CTL3D_SUPPORT
-
- /////////////////////////////////////////////////////////////////////////////
-