Source code of Windows XP (NT5)
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 Microsoft Corporation
//
// replica or new domain page
//
// 12-19-97 sburns
#include "headers.hxx"
#include "page.hpp"
#include "ReplicaOrNewDomainPage.hpp"
#include "resource.h"
#include "ds.hpp"
#include "state.hpp"
ReplicaOrNewDomainPage::ReplicaOrNewDomainPage() : DCPromoWizardPage( IDD_REPLICA_OR_DOMAIN, IDS_REPLICA_OR_DOMAIN_PAGE_TITLE, IDS_REPLICA_OR_DOMAIN_PAGE_SUBTITLE), warnIcon(0) { LOG_CTOR(ReplicaOrNewDomainPage); }
ReplicaOrNewDomainPage::~ReplicaOrNewDomainPage() { LOG_DTOR(ReplicaOrNewDomainPage);
if (warnIcon) { Win::DestroyIcon(warnIcon); } }
void ReplicaOrNewDomainPage::OnInit() { LOG_FUNCTION(ReplicaOrNewDomainPage::OnInit);
HRESULT hr = Win::LoadImage(IDI_WARN, warnIcon); ASSERT(SUCCEEDED(hr));
Win::SendMessage( Win::GetDlgItem(hwnd, IDC_WARNING_ICON), STM_SETICON, reinterpret_cast<WPARAM>(warnIcon), 0);
State& state = State::GetInstance(); if (state.UsingAnswerFile()) { String option = state.GetAnswerFileOption(State::OPTION_REPLICA_OR_NEW_DOMAIN); Win::CheckDlgButton( hwnd, (option.icompare(State::VALUE_DOMAIN) == 0) ? IDC_NEW_DOMAIN : IDC_REPLICA, BST_CHECKED); return; }
Win::CheckDlgButton(hwnd, IDC_NEW_DOMAIN, BST_CHECKED); }
bool ReplicaOrNewDomainPage::OnSetActive() { LOG_FUNCTION(ReplicaOrNewDomainPage::OnSetActive); Win::PropSheet_SetWizButtons( Win::GetParent(hwnd), PSWIZB_BACK | PSWIZB_NEXT);
State& state = State::GetInstance(); if (state.RunHiddenUnattended()) { int nextPage = Validate(); if (nextPage != -1) { GetWizard().SetNextPageID(hwnd, nextPage); } else { state.ClearHiddenWhileUnattended(); } }
return true; }
int ReplicaOrNewDomainPage::Validate() { LOG_FUNCTION(ReplicaOrNewDomainPage::Validate);
State& state = State::GetInstance(); int nextPage = -1; if (Win::IsDlgButtonChecked(hwnd, IDC_REPLICA)) { state.SetOperation(State::REPLICA); nextPage = IDD_REPLICATE_FROM_MEDIA; // IDD_CONFIG_DNS_CLIENT;
} else { ASSERT(Win::IsDlgButtonChecked(hwnd, IDC_NEW_DOMAIN)); state.SetOperation(State::NONE); nextPage = IDD_TREE_OR_CHILD; }
return nextPage; }
|