Leaked source code of windows server 2003
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/////////////////////////////////////////////////////////////////////////////
//
// Copyright (c) 1997-2000 Microsoft Corporation
//
// Module Name:
// ResProp.cpp
//
// Description:
// Implementation of the resource extension property page classes.
//
// Maintained By:
// David Potter (DavidP) Mmmm DD, 1997
//
// Revision History:
//
// Notes:
//
/////////////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "DebugEx.h"
#include "ResProp.h"
#include "ExtObj.h"
#include "HelpData.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__; #endif
/////////////////////////////////////////////////////////////////////////////
// CDebugParamsPage property page
/////////////////////////////////////////////////////////////////////////////
IMPLEMENT_DYNCREATE(CDebugParamsPage, CBasePropertyPage)
/////////////////////////////////////////////////////////////////////////////
// Message Maps
BEGIN_MESSAGE_MAP(CDebugParamsPage, CBasePropertyPage) //{{AFX_MSG_MAP(CDebugParamsPage)
//}}AFX_MSG_MAP
// TODO: Modify the following lines to represent the data displayed on this page.
ON_EN_CHANGE(IDC_PP_DEBUG_DEBUGPREFIX, CBasePropertyPage::OnChangeCtrl) END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
//++
//
// CDebugParamsPage::CDebugParamsPage
//
// Routine Description:
// Default constructor.
//
// Arguments:
// None.
//
// Return Value:
// None.
//
//--
/////////////////////////////////////////////////////////////////////////////
CDebugParamsPage::CDebugParamsPage(void) : CBasePropertyPage(IDD, g_aHelpIDs_IDD_PP_RESOURCE_DEBUG_PAGE, NULL) { // TODO: Modify the following lines to represent the data displayed on this page.
//{{AFX_DATA_INIT(CDebugParamsPage)
m_strText = _T(""); m_strDebugPrefix = _T(""); //}}AFX_DATA_INIT
m_cprops = 0;
m_iddPropertyPage = IDD_PP_RESOURCE_DEBUG_PAGE;
} //*** CDebugParamsPage::CDebugParamsPage()
/////////////////////////////////////////////////////////////////////////////
//++
//
// CDebugParamsPage::BInit
//
// Routine Description:
// Initialize the page.
//
// Arguments:
// peo [IN OUT] Pointer to the extension object.
//
// Return Value:
// TRUE Page initialized successfully.
// FALSE Page failed to initialize.
//
//--
/////////////////////////////////////////////////////////////////////////////
BOOL CDebugParamsPage::BInit(IN OUT CExtObject * peo) { ASSERT(peo != NULL);
m_peo = peo;
// Setup the property array.
m_rgProps[epropDebugPrefix].Set(REGPARAM_DEBUG_PREFIX, m_strDebugPrefix, m_strPrevDebugPrefix); if (Cot() == CLUADMEX_OT_RESOURCE) { m_rgProps[epropSeparateMonitor].Set(REGPARAM_SEPARATE_MONITOR, m_bSeparateMonitor, m_bPrevSeparateMonitor); m_cprops = sizeof(m_rgProps) / sizeof(CObjectProperty); } // if: resource object
else if (Cot() == CLUADMEX_OT_RESOURCETYPE) m_cprops = (sizeof(m_rgProps) / sizeof(CObjectProperty)) - 1; else { ASSERT(0); return FALSE; } // else: unsupport object type
// Call the base class method.
return CBasePropertyPage::BInit(peo);
} //*** CDebugParamsPage::BInit()
/////////////////////////////////////////////////////////////////////////////
//++
//
// CDebugParamsPage::DoDataExchange
//
// Routine Description:
// Do data exchange between the dialog and the class.
//
// Arguments:
// pDX [IN OUT] Data exchange object
//
// Return Value:
// None.
//
//--
/////////////////////////////////////////////////////////////////////////////
void CDebugParamsPage::DoDataExchange(CDataExchange * pDX) { AFX_MANAGE_STATE(AfxGetStaticModuleState());
// TODO: Modify the following lines to represent the data displayed on this page.
//{{AFX_DATA_MAP(CDebugParamsPage)
DDX_Control(pDX, IDC_PP_DEBUG_DEBUGPREFIX, m_editPrefix); DDX_Text(pDX, IDC_PP_DEBUG_TEXT, m_strText); DDX_Text(pDX, IDC_PP_DEBUG_DEBUGPREFIX, m_strDebugPrefix); //}}AFX_DATA_MAP
CBasePropertyPage::DoDataExchange(pDX);
} //*** CDebugParamsPage::DoDataExchange()
/////////////////////////////////////////////////////////////////////////////
//++
//
// CDebugParamsPage::OnInitDialog
//
// Routine Description:
// Handler for the WM_INITDIALOG message.
//
// Arguments:
// None.
//
// Return Value:
// TRUE We need the focus to be set for us.
// FALSE We already set the focus to the proper control.
//
//--
/////////////////////////////////////////////////////////////////////////////
BOOL CDebugParamsPage::OnInitDialog(void) { AFX_MANAGE_STATE(AfxGetStaticModuleState());
// Load the help text.
{ UINT ids;
if (Cot() == CLUADMEX_OT_RESOURCE) ids = IDS_RESOURCE_TEXT; else ids = IDS_RESOURCE_TYPE_TEXT; m_strText.LoadString(ids); } // Load the help text.
// Call the base class method.
CBasePropertyPage::OnInitDialog();
// Limit the size of the text that can be entered in edit controls.
m_editPrefix.SetLimitText(_MAX_PATH);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
} //*** CDebugParamsPage::OnInitDialog()
/////////////////////////////////////////////////////////////////////////////
//++
//
// CDebugParamsPage::BApplyChanges
//
// Routine Description:
// Apply changes made on the page.
//
// Arguments:
// None.
//
// Return Value:
// TRUE Page successfully applied.
// FALSE Error applying page.
//
//--
/////////////////////////////////////////////////////////////////////////////
BOOL CDebugParamsPage::BApplyChanges(void) { // If the debug prefix string is not empty but the resource is not being
// run in a separate resource monitor, ask the user if we should change
// that setting now. Only do this for resources.
if ( (Cot() == CLUADMEX_OT_RESOURCE) && (m_strDebugPrefix.GetLength() > 0) && !m_bSeparateMonitor) { AFX_MANAGE_STATE(AfxGetStaticModuleState());
if (AfxMessageBox(IDS_NOT_IN_SEPARATE_MONITOR, MB_YESNO | MB_ICONEXCLAMATION) == IDYES) m_bSeparateMonitor = TRUE; } // if: debug prefix string specified for resource but not in separate monitor
return CBasePropertyPage::BApplyChanges();
} //*** CDebugParamsPage::BApplyChanges()
|