windows-nt/Source/XPSP1/NT/inetsrv/iis/ui/itools/keyring/machine.cpp
2020-09-26 16:20:57 +08:00

91 lines
2 KiB
C++

// 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 );
}