// the machine objects // this is internal to the keyring application #include "stdafx.h" #include "KeyObjs.h" #include "machine.h" #include "KRDoc.h" #include "resource.h" IMPLEMENT_DYNCREATE(CLocalMachine, CMachine); IMPLEMENT_DYNCREATE(CRemoteMachine, CMachine); // a global reference to this doc object extern CKeyRingDoc* g_pDocument; //---------------------------------------------------------------- void CInternalMachine::SetDirty( BOOL fDirty ) { // we are dirtying, tell the doc so the commit flag // can be activated if ( fDirty ) { ASSERT( g_pDocument ); g_pDocument->SetDirty( fDirty ); } // set the dirty flag m_fDirty = fDirty; } //---------------------------------------------------------------- BOOL CInternalMachine::FCommitNow() { // if we are not diry, there is nothing to do if ( !m_fDirty ) return TRUE; // the success flag BOOL fSuccess = TRUE; // loop through the services and tell each to commit CService* pService = (CService*)GetFirstChild(); while( pService ) { // tell the service to commit fSuccess &= pService->FCommitChangesNow(); // get the next service pService = (CService*)GetNextChild( pService ); } // set the dirty flag SetDirty( !fSuccess ); // return whether or not it all worked return fSuccess; } //---------------------------------------------------------------- BOOL CMachine::FLocal() { return TRUE; } //---------------------------------------------------------------- void CMachine::GetMachineName( CString& sz ) { sz = m_szNetMachineName; } //---------------------------------------------------------------- void CLocalMachine::UpdateCaption( void ) { CString szCaption; szCaption.LoadString(IDS_MACHINE_LOCAL); FSetCaption( szCaption ); } //---------------------------------------------------------------- CRemoteMachine::CRemoteMachine( CString sz ) { m_szNetMachineName = sz; } //---------------------------------------------------------------- void CRemoteMachine::UpdateCaption( void ) { FSetCaption( m_szNetMachineName ); }