// Copyright (c) 1997-1999 Microsoft Corporation // // Tab state // // 3-11-98 sburns #ifndef STATE_HPP_INCLUDED #define STATE_HPP_INCLUDED extern TCHAR const c_szWizardFilename[]; String CheckPreconditions(); // Returns the dc role change status of the machine. DSROLE_OPERATION_STATE GetDsRoleChangeState(); // Return false if the machine is undergoing a DC upgrade, true otherwise. // 388578 bool IsUpgradingDc(); // Singleton state of the UI. class State { public: static void Delete(); static State& GetInstance(); static void Init(); static void Refresh(); bool ChangesNeedSaving() const; bool IsMachineDc() const; bool IsMemberOfWorkgroup() const; bool IsNetworkingInstalled() const; void SetIsMemberOfWorkgroup(bool yesNo); String GetComputerDomainDnsName() const; void SetComputerDomainDnsName(const String& newName); bool ComputerDomainDnsNameWasChanged() const; String GetFullComputerName() const; String GetNetbiosComputerName() const; String GetShortComputerName() const; void SetShortComputerName(const String& name); bool WasShortComputerNameChanged() const; bool WasNetbiosComputerNameChanged() const; String GetOriginalShortComputerName() const; String GetDomainName() const; void SetDomainName(const String& name); bool WasMembershipChanged() const; bool GetSyncDNSNames() const; void SetSyncDNSNames(bool yesNo); bool SyncDNSNamesWasChanged() const; bool SaveChanges(HWND dialog); // indicates that changes have been made in this session. bool ChangesMadeThisSession() const; void SetChangesMadeThisSession(bool yesNo); // indicates that changes have been made in this or prior sessions, or // the computer name has been changed by some other means than ourselves. bool NeedsReboot() const; private: // Init() actually builds the instance State(); // Delete destroys the instance ~State(); // not implemented: no copying allowed State(const State&); const State& operator=(const State&); bool DoSaveDomainChange(HWND dialog); bool DoSaveWorkgroupChange(HWND dialog); bool DoSaveNameChange(HWND dialog); void SetFullComputerName(); }; #endif // STATE_HPP_INCLUDED