223 lines
4.2 KiB
C++
223 lines
4.2 KiB
C++
/*
|
|
* Copyright (c) 1998 Microsoft Corporation
|
|
*
|
|
* Module Name:
|
|
*
|
|
* ocpage.cpp
|
|
*
|
|
* Abstract:
|
|
*
|
|
* This file defines an OC Manager Wizard Page base class.
|
|
*
|
|
* Author:
|
|
*
|
|
* Breen Hagan (BreenH) Oct-02-98
|
|
*
|
|
* Environment:
|
|
*
|
|
* User Mode
|
|
*/
|
|
|
|
#include "stdafx.h"
|
|
#include "logfile.h"
|
|
|
|
/*
|
|
* External Function Prototypes.
|
|
*/
|
|
|
|
HINSTANCE GetInstance();
|
|
|
|
INT_PTR CALLBACK
|
|
OCPage::PropertyPageDlgProc(
|
|
HWND hwndDlg,
|
|
UINT uMsg,
|
|
WPARAM wParam,
|
|
LPARAM lParam
|
|
)
|
|
{
|
|
OCPage *pDlg;
|
|
|
|
if (uMsg == WM_INITDIALOG) {
|
|
pDlg = reinterpret_cast<OCPage*>(LPPROPSHEETPAGE(lParam)->lParam);
|
|
} else {
|
|
pDlg = reinterpret_cast<OCPage*>(GetWindowLongPtr(hwndDlg, DWLP_USER));
|
|
}
|
|
|
|
if (pDlg == NULL) {
|
|
return(0);
|
|
}
|
|
|
|
switch(uMsg) {
|
|
case WM_INITDIALOG:
|
|
pDlg->SetDlgWnd(hwndDlg);
|
|
SetWindowLongPtr(hwndDlg, DWLP_USER, (LONG_PTR)pDlg);
|
|
return(pDlg->OnInitDialog(hwndDlg, wParam, lParam));
|
|
|
|
case WM_NOTIFY:
|
|
return(pDlg->OnNotify(hwndDlg, wParam, lParam));
|
|
|
|
case WM_COMMAND:
|
|
return(pDlg->OnCommand(hwndDlg, wParam, lParam));
|
|
}
|
|
|
|
return(0);
|
|
}
|
|
|
|
|
|
OCPage::OCPage ()
|
|
{
|
|
}
|
|
|
|
BOOL OCPage::Initialize ()
|
|
{
|
|
dwFlags = PSP_USECALLBACK;
|
|
|
|
pszHeaderTitle = MAKEINTRESOURCE(GetHeaderTitleResource());
|
|
if (pszHeaderTitle) {
|
|
dwFlags |= PSP_USEHEADERTITLE;
|
|
}
|
|
|
|
pszHeaderSubTitle = MAKEINTRESOURCE(GetHeaderSubTitleResource());
|
|
if (pszHeaderSubTitle) {
|
|
dwFlags |= PSP_USEHEADERSUBTITLE;
|
|
}
|
|
|
|
dwSize = sizeof(PROPSHEETPAGE);
|
|
hInstance = GetInstance();
|
|
pszTemplate = MAKEINTRESOURCE(GetPageID());
|
|
pfnDlgProc = PropertyPageDlgProc;
|
|
pfnCallback = NULL;
|
|
lParam = (LPARAM)this;
|
|
|
|
return(pszTemplate != NULL ? TRUE : FALSE);
|
|
}
|
|
|
|
OCPage::~OCPage()
|
|
{
|
|
}
|
|
|
|
BOOL
|
|
OCPage::OnNotify(
|
|
HWND hWndDlg,
|
|
WPARAM wParam,
|
|
LPARAM lParam
|
|
)
|
|
{
|
|
NMHDR *pnmh = (LPNMHDR) lParam;
|
|
|
|
switch(pnmh->code)
|
|
{
|
|
case PSN_SETACTIVE:
|
|
SetWindowLongPtr(hWndDlg, DWLP_MSGRESULT, CanShow() ? 0 : -1);
|
|
PropSheet_SetWizButtons(GetParent(hWndDlg),
|
|
PSWIZB_NEXT | PSWIZB_BACK);
|
|
break;
|
|
|
|
case PSN_WIZNEXT:
|
|
SetWindowLongPtr(hWndDlg, DWLP_MSGRESULT, ApplyChanges() ? 0 : -1);
|
|
break;
|
|
|
|
case PSN_WIZBACK:
|
|
SetWindowLongPtr(hWndDlg, DWLP_MSGRESULT, 0);
|
|
break;
|
|
|
|
default:
|
|
return(FALSE);
|
|
|
|
}
|
|
|
|
UNREFERENCED_PARAMETER(lParam);
|
|
UNREFERENCED_PARAMETER(wParam);
|
|
return(TRUE);
|
|
}
|
|
|
|
BOOL
|
|
OCPage::OnCommand(
|
|
HWND hWndDlg,
|
|
WPARAM wParam,
|
|
LPARAM lParam
|
|
)
|
|
{
|
|
UNREFERENCED_PARAMETER(lParam);
|
|
UNREFERENCED_PARAMETER(wParam);
|
|
UNREFERENCED_PARAMETER(hWndDlg);
|
|
return(TRUE);
|
|
}
|
|
|
|
|
|
BOOL OCPage::OnInitDialog(
|
|
HWND hWndDlg,
|
|
WPARAM wParam,
|
|
LPARAM lParam
|
|
)
|
|
{
|
|
UNREFERENCED_PARAMETER(lParam);
|
|
UNREFERENCED_PARAMETER(wParam);
|
|
UNREFERENCED_PARAMETER(hWndDlg);
|
|
return(TRUE);
|
|
}
|
|
|
|
BOOL OCPage::ApplyChanges(
|
|
)
|
|
{
|
|
return(TRUE);
|
|
}
|
|
|
|
DWORD
|
|
OCPage::DisplayMessageBox(
|
|
UINT resText,
|
|
UINT resTitle,
|
|
UINT uType,
|
|
int *mbRetVal
|
|
)
|
|
{
|
|
return(::DisplayMessageBox(m_hDlgWnd, resText, resTitle, uType, mbRetVal));
|
|
}
|
|
|
|
DWORD
|
|
DisplayMessageBox(
|
|
HWND hWnd,
|
|
UINT resText,
|
|
UINT resTitle,
|
|
UINT uType,
|
|
int *mbRetVal
|
|
)
|
|
{
|
|
int iRet;
|
|
TCHAR szResText[1024];
|
|
TCHAR szResTitle[1024];
|
|
|
|
if (mbRetVal == NULL) {
|
|
return(ERROR_INVALID_PARAMETER);
|
|
}
|
|
|
|
iRet = LoadString(
|
|
GetInstance(),
|
|
resText,
|
|
szResText,
|
|
1024
|
|
);
|
|
if (iRet == 0) {
|
|
return(GetLastError());
|
|
}
|
|
|
|
iRet = LoadString(
|
|
GetInstance(),
|
|
resTitle,
|
|
szResTitle,
|
|
1024
|
|
);
|
|
if (iRet == 0) {
|
|
return(GetLastError());
|
|
}
|
|
|
|
*mbRetVal = MessageBox(
|
|
hWnd,
|
|
szResText,
|
|
szResTitle,
|
|
uType
|
|
);
|
|
|
|
return(*mbRetVal == 0 ? ERROR_OUTOFMEMORY : ERROR_SUCCESS);
|
|
}
|