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.
98 lines
2.6 KiB
98 lines
2.6 KiB
/*++
|
|
|
|
© 1998 Seagate Software, Inc. All rights reserved.
|
|
|
|
Module Name:
|
|
|
|
HsmCom.h
|
|
|
|
Abstract:
|
|
|
|
Root node of snapin - represents the Computer.
|
|
|
|
Author:
|
|
|
|
Rohde Wakefield [rohde] 12-Aug-1997
|
|
|
|
Revision History:
|
|
|
|
--*/
|
|
|
|
#ifndef _HSMCOM_H
|
|
#define _HSMCOM_H
|
|
|
|
#include "prhsmcom.h"
|
|
#include "SakNodeI.h"
|
|
|
|
class ATL_NO_VTABLE CUiHsmCom :
|
|
public CSakNodeImpl<CUiHsmCom>,
|
|
public CComCoClass<CUiHsmCom,&CLSID_CUiHsmCom>
|
|
{
|
|
|
|
public:
|
|
// constructor/destructor
|
|
CUiHsmCom(void) {};
|
|
BEGIN_COM_MAP(CUiHsmCom)
|
|
COM_INTERFACE_ENTRY2(IDispatch, ISakNodeProp)
|
|
COM_INTERFACE_ENTRY(ISakNode)
|
|
COM_INTERFACE_ENTRY(IDataObject)
|
|
COM_INTERFACE_ENTRY(ISakNodeProp)
|
|
END_COM_MAP()
|
|
|
|
DECLARE_REGISTRY_RESOURCEID(IDR_CUiHsmCom)
|
|
|
|
HRESULT FinalConstruct( void );
|
|
void FinalRelease( void );
|
|
|
|
public:
|
|
|
|
// ISakNode methods
|
|
STDMETHOD( InvokeCommand ) ( SHORT sCmd, IDataObject *pDataObject );
|
|
STDMETHOD( GetContextMenu ) ( BOOL bMultiSelect, HMENU *phMenu );
|
|
STDMETHOD( CreateChildren ) ( );
|
|
STDMETHOD( InitNode ) ( ISakSnapAsk* pSakSnapAsk, IUnknown* pHsmObj, ISakNode* pParent );
|
|
STDMETHOD( AddPropertyPages) ( RS_NOTIFY_HANDLE handle, IUnknown* pUnkPropSheetCallback, IEnumGUID* pEnumObjectId, IEnumUnknown *pEnumUnkNode );
|
|
|
|
// data members
|
|
// static, class-wide variables
|
|
static INT m_nScopeOpenIconIndex; // virtual scope index of Open Icon
|
|
static INT m_nScopeCloseIconIndex; // virtual scope index of Close Icon
|
|
static INT m_nResultIconIndex; // virtual scope index of Close Icon
|
|
|
|
// data member unique to this class.
|
|
CWsbStringPtr m_szHsmName; // name of Hsm
|
|
|
|
// property pages
|
|
CPropHsmComStat* m_pPageStat;
|
|
CPropHsmComStat* m_pPageServices;
|
|
|
|
// Private helper functions
|
|
HRESULT GetEngineStatus (HSM_SYS_STS *status);
|
|
HRESULT SetEngineStatus (HSM_SYS_STS status);
|
|
HRESULT CheckStatusChange (HSM_SYS_STS oldStatus, HSM_SYS_STS newStatus, BOOL *fOk);
|
|
|
|
};
|
|
|
|
class CUiHsmComSheet : public CSakPropertySheet
|
|
{
|
|
public:
|
|
CUiHsmComSheet( ) { };
|
|
|
|
HRESULT AddPropertyPages( );
|
|
HRESULT InitSheet(
|
|
RS_NOTIFY_HANDLE handle,
|
|
IUnknown *pUnkPropSheetCallback,
|
|
CSakNode *pSakNode,
|
|
ISakSnapAsk *pSakSnapAsk,
|
|
IEnumGUID *pEnumObjectId,
|
|
IEnumUnknown *pEnumUnkNode);
|
|
CString m_NodeTitle;
|
|
|
|
private:
|
|
};
|
|
|
|
|
|
|
|
#endif
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|