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
//
// confirm user want gc for replicate from media
//
// 28 Apr 2000 sburns
#include "headers.hxx"
#include "resource.h"
#include "page.hpp"
#include "GcConfirmationPage.hpp"
#include "state.hpp"
GcConfirmationPage::GcConfirmationPage() : DCPromoWizardPage( IDD_GC_CONFIRM, IDS_GC_CONFIRM_PAGE_TITLE, IDS_GC_CONFIRM_PAGE_SUBTITLE) { LOG_CTOR(GcConfirmationPage); }
GcConfirmationPage::~GcConfirmationPage() { LOG_DTOR(GcConfirmationPage); }
void GcConfirmationPage::OnInit() { LOG_FUNCTION(GcConfirmationPage::OnInit);
State& state = State::GetInstance(); if (state.UsingAnswerFile()) { String option = state.GetAnswerFileOption(AnswerFile::OPTION_GC_CONFIRM); if (option.icompare(AnswerFile::VALUE_YES) == 0) { Win::CheckDlgButton(hwnd, IDC_GC_YES, BST_CHECKED); return; } }
Win::CheckDlgButton(hwnd, IDC_GC_NO, BST_CHECKED); }
bool GcConfirmationPage::OnCommand( HWND /* windowFrom */ , unsigned controlIDFrom, unsigned code) { // LOG_FUNCTION(GcConfirmationPage::OnCommand);
switch (controlIDFrom) { case IDC_GC_YES: case IDC_GC_NO: { if (code == BN_CLICKED) { SetChanged(controlIDFrom); return true; } } default: { // do nothing
break; } }
return false; }
bool GcConfirmationPage::OnSetActive() { LOG_FUNCTION(GcConfirmationPage::OnSetActive); ASSERT(State::GetInstance().GetOperation() == State::REPLICA); Win::PropSheet_SetWizButtons( Win::GetParent(hwnd), PSWIZB_BACK | PSWIZB_NEXT);
State& state = State::GetInstance(); if (state.RunHiddenUnattended() || !state.IsAdvancedMode()) { // skip the page.
LOG(L"skipping GcConfirmationPage");
Wizard& wiz = GetWizard();
if (wiz.IsBacktracking()) { // backup once again
wiz.Backtrack(hwnd); return true; }
int nextPage = GcConfirmationPage::Validate(); if (nextPage != -1) { GetWizard().SetNextPageID(hwnd, nextPage); } else { state.ClearHiddenWhileUnattended(); }
}
return true; }
int GcConfirmationPage::Validate() { LOG_FUNCTION(GcConfirmationPage::Validate);
State& state = State::GetInstance();
int nextPage = IDD_CONFIG_DNS_CLIENT; state.SetRestoreGc(Win::IsDlgButtonChecked(hwnd, IDC_GC_YES));
LOG(String::format(L"next = %1!d!", nextPage)); return nextPage; }
|