219 lines
5.5 KiB
C++
219 lines
5.5 KiB
C++
/////////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// Copyright (c) 2000 Microsoft Corporation
|
|
//
|
|
// Module Name:
|
|
// GenScript.cpp
|
|
//
|
|
// Abstract:
|
|
// Implementation of the CGenericScriptParamsPage class.
|
|
//
|
|
// Author:
|
|
// Geoffrey Pease (GPease) 31-JAN-2000
|
|
//
|
|
// Revision History:
|
|
//
|
|
// Notes:
|
|
//
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
#include "stdafx.h"
|
|
#include "CluAdmX.h"
|
|
#include "ExtObj.h"
|
|
#include "GenScript.h"
|
|
#include "DDxDDv.h"
|
|
#include "PropList.h"
|
|
#include "HelpData.h" // for g_rghelpmap*
|
|
|
|
#ifdef _DEBUG
|
|
#define new DEBUG_NEW
|
|
#undef THIS_FILE
|
|
static char THIS_FILE[] = __FILE__;
|
|
#endif
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// CGenericScriptParamsPage property page
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
IMPLEMENT_DYNCREATE(CGenericScriptParamsPage, CBasePropertyPage)
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// Message Maps
|
|
|
|
BEGIN_MESSAGE_MAP(CGenericScriptParamsPage, CBasePropertyPage)
|
|
//{{AFX_MSG_MAP(CGenericScriptParamsPage)
|
|
ON_EN_CHANGE(IDC_PP_GENSCRIPT_PARAMS_SCRIPTFILEPATH, OnChangeRequired)
|
|
//}}AFX_MSG_MAP
|
|
END_MESSAGE_MAP()
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
//++
|
|
//
|
|
// CGenericScriptParamsPage::CGenericScriptParamsPage
|
|
//
|
|
// Routine Description:
|
|
// Default constructor.
|
|
//
|
|
// Arguments:
|
|
// None.
|
|
//
|
|
// Return Value:
|
|
// None.
|
|
//
|
|
//--
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
CGenericScriptParamsPage::CGenericScriptParamsPage(void)
|
|
: CBasePropertyPage(g_aHelpIDs_IDD_PP_GENSCRIPT_PARAMETERS, g_aHelpIDs_IDD_WIZ_GENSCRIPT_PARAMETERS)
|
|
{
|
|
//{{AFX_DATA_INIT(CGenericScriptParamsPage)
|
|
m_strScriptFilepath = _T("");
|
|
//}}AFX_DATA_INIT
|
|
|
|
// Setup the property array.
|
|
{
|
|
m_rgProps[epropScriptFilepath].Set(REGPARAM_GENSCRIPT_SCRIPT_FILEPATH, m_strScriptFilepath, m_strPrevScriptFilepath);
|
|
} // Setup the property array
|
|
|
|
m_iddPropertyPage = IDD_PP_GENSCRIPT_PARAMETERS;
|
|
m_iddWizardPage = IDD_WIZ_GENSCRIPT_PARAMETERS;
|
|
|
|
} //*** CGenericScriptParamsPage::CGenericScriptParamsPage()
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
//++
|
|
//
|
|
// CGenericScriptParamsPage::DoDataExchange
|
|
//
|
|
// Routine Description:
|
|
// Do data exchange between the dialog and the class.
|
|
//
|
|
// Arguments:
|
|
// pDX [IN OUT] Data exchange object
|
|
//
|
|
// Return Value:
|
|
// None.
|
|
//
|
|
//--
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
void CGenericScriptParamsPage::DoDataExchange(CDataExchange * pDX)
|
|
{
|
|
if (!pDX->m_bSaveAndValidate || !BSaved())
|
|
{
|
|
AFX_MANAGE_STATE(AfxGetStaticModuleState());
|
|
|
|
//{{AFX_DATA_MAP(CGenericScriptParamsPage)
|
|
DDX_Control(pDX, IDC_PP_GENSCRIPT_PARAMS_SCRIPTFILEPATH, m_editScriptFilepath);
|
|
DDX_Text(pDX, IDC_PP_GENSCRIPT_PARAMS_SCRIPTFILEPATH, m_strScriptFilepath);
|
|
//}}AFX_DATA_MAP
|
|
|
|
if (!BBackPressed())
|
|
{
|
|
DDV_RequiredText(pDX, IDC_PP_GENSCRIPT_PARAMS_SCRIPTFILEPATH, IDC_PP_GENSCRIPT_PARAMS_SCRIPTFILEPATH_LABEL, m_strScriptFilepath);
|
|
} // if: Back button not pressed
|
|
} // if: not saving or haven't saved yet
|
|
|
|
CBasePropertyPage::DoDataExchange(pDX);
|
|
|
|
} //*** CGenericScriptParamsPage::DoDataExchange()
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
//++
|
|
//
|
|
// CGenericScriptParamsPage::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 CGenericScriptParamsPage::OnInitDialog(void)
|
|
{
|
|
// Call the base class.
|
|
CBasePropertyPage::OnInitDialog();
|
|
|
|
return TRUE; // return TRUE unless you set the focus to a control
|
|
// EXCEPTION: OCX Property Pages should return FALSE
|
|
|
|
} //*** CGenericScriptParamsPage::OnInitDialog()
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
//++
|
|
//
|
|
// CGenericScriptParamsPage::OnSetActive
|
|
//
|
|
// Routine Description:
|
|
// Handler for the PSN_SETACTIVE message.
|
|
//
|
|
// Arguments:
|
|
// None.
|
|
//
|
|
// Return Value:
|
|
// TRUE Page successfully initialized.
|
|
// FALSE Page not initialized.
|
|
//
|
|
//--
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
BOOL CGenericScriptParamsPage::OnSetActive(void)
|
|
{
|
|
AFX_MANAGE_STATE(AfxGetStaticModuleState());
|
|
|
|
// Enable/disable the Next/Finish button.
|
|
if (BWizard())
|
|
{
|
|
if (m_strScriptFilepath.GetLength() == 0)
|
|
{
|
|
EnableNext(FALSE);
|
|
}
|
|
else
|
|
{
|
|
EnableNext(TRUE);
|
|
}
|
|
} // if: enable/disable the Next button
|
|
|
|
return CBasePropertyPage::OnSetActive();
|
|
|
|
} //*** CGenericScriptParamsPage::OnSetActive()
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
//++
|
|
//
|
|
// CGenericScriptParamsPage::OnChangeRequired
|
|
//
|
|
// Routine Description:
|
|
// Handler for the EN_CHANGE message on required controls.
|
|
//
|
|
// Arguments:
|
|
// None.
|
|
//
|
|
// Return Value:
|
|
// None.
|
|
//
|
|
//--
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
void CGenericScriptParamsPage::OnChangeRequired(void)
|
|
{
|
|
AFX_MANAGE_STATE(AfxGetStaticModuleState());
|
|
|
|
OnChangeCtrl();
|
|
|
|
if (BWizard())
|
|
{
|
|
if (m_editScriptFilepath.GetWindowTextLength() == 0)
|
|
{
|
|
EnableNext(FALSE);
|
|
}
|
|
else
|
|
{
|
|
EnableNext(TRUE);
|
|
}
|
|
} // if: in a wizard
|
|
|
|
} //*** CGenericScriptParamsPage::OnChangeRequired()
|