Files
ZuneShell.dll/ZuneUI/FirstConnectForPhoneWizard.cs
T

72 lines
3.1 KiB
C#

// Decompiled with JetBrains decompiler
// Type: ZuneUI.FirstConnectForPhoneWizard
// Assembly: ZuneShell, Version=4.7.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
// MVID: FC8028F3-A47B-4FB4-B35B-11D1752D8264
// Assembly location: C:\Program Files\Zune\ZuneShell.dll
namespace ZuneUI
{
public class FirstConnectForPhoneWizard : DeviceUpdateWizard
{
private bool _wasPreviouslyNotPaired;
public FirstConnectForPhoneWizard()
{
this._wasPreviouslyNotPaired = ZuneShell.DefaultInstance.Management.DeviceManagement.DevicePartnership == DeviceRelationship.None;
ZuneShell.DefaultInstance.Management.DeviceManagement.DevicePartnership = DeviceRelationship.Permanent;
}
protected override void AddPages()
{
this.AddPage(new FirstConnectPhoneIntroPage(this), Shell.LoadString(StringId.IDS_BREADCRUMB_INTRODUCTION));
this.AddPage(new FirstConnectDeviceNamePage(this), Shell.LoadString(StringId.IDS_BREADCRUMB_PHONE_NAME));
this.AddPage(new DeviceUpdateCheckingPage(this), Shell.LoadString(StringId.IDS_BREADCRUMB_PHONE_UPDATE));
this.AddPage(new DeviceUpdateEULAPage(this));
this.AddPage(new DeviceUpdateBatteryPowerPage(this));
this.AddPage(new DeviceUpdateGuestWarningPage(this));
this.AddPage(new DeviceUpdateSyncingPage(this));
this.AddPage(new DeviceUpdateDiskSpaceErrorPage(this));
this.AddPage(new DeviceUpdateProgressPage(this));
this.AddPage(new DeviceUpdateSummaryPage(this));
this.AddPage(new DeviceUpdateErrorPage(this));
}
public override void Cancel()
{
if (this.CurrentPage is DeviceUpdateProgressPage)
{
if (this.UIFirmwareUpdater == null || !this.UIFirmwareUpdater.UpdateInProgress)
return;
this.UIFirmwareUpdater.CancelFirmwareUpdate();
}
else
{
if (this.RequiredStepsComplete)
return;
base.Cancel();
}
}
public override bool MoveBack()
{
if (!base.MoveBack())
return false;
if (this.CurrentPage is FirstConnectPage)
((FirstConnectPage)this.CurrentPage).IsPageComplete = false;
return true;
}
public bool RequiredStepsComplete => !(this.CurrentPage is FirstConnectPhoneIntroPage) && !(this.CurrentPage is FirstConnectDeviceNamePage) || ((FirstConnectPage)this.CurrentPage).IsPageComplete;
public override bool CanCommitChanges => this.IsValid && this.RequiredStepsComplete;
protected override bool OnCommitChanges()
{
bool navigateToLandingPage = this._wasPreviouslyNotPaired && !(this.CurrentPage is FirstConnectDeviceNamePage);
ZuneShell.DefaultInstance.Management.CommitListSave();
ZuneShell.DefaultInstance.Management.DeviceManagement.SetupComplete(navigateToLandingPage);
return base.OnCommitChanges();
}
}
}