📄 wmsnodeserversfolder.cpp
字号:
#include "StdAfx.h"#include "WarMmcSnapin.h"#include "WmsNodeServersFolder.h" // class implemented#include "WarCollector.h"#include "WarIfServer.h"#include "WmsNodeSite.h"/////////////////////////////// PUBLIC ///////////////////////////////////////// {0F698F2A-7839-47b2-8832-0849DA2EF03E}const GUID WmsNodeServersFolder::thisGuid = { 0xf698f2a, 0x7839, 0x47b2, { 0x88, 0x32, 0x8, 0x49, 0xda, 0x2e, 0xf0, 0x3e } };WmsNodeServersFolder::WmsNodeServersFolder(war_if_server_ptr_t& rSvrPtr): mServicePtr(rSvrPtr) // Deleted by parent{}WmsNodeServersFolder::~WmsNodeServersFolder(){}//============================= LIFECYCLE ====================================//============================= OPERATORS ====================================//============================= OPERATIONS ===================================//============================= CALLBACK ===================================HRESULT WmsNodeServersFolder::OnExpand(IConsoleNameSpace *pConsoleNameSpace, IConsole *pConsole, HSCOPEITEM parent){ if (GetHandle() == NULL) SetHandle((HANDLE)parent); if (!bExpanded) { war_if_site_list_t sites; try { mServicePtr->EnumSites(sites); } catch(WarException& ex) { WarCollector<TCHAR> err_msg; err_msg << "Error enumerating sites.\r\n" << ex << war_endl; ::MessageBox(NULL, err_msg.GetValue().c_str(), _T("Error"), MB_OK | MB_ICONWARNING); return E_UNEXPECTED; } for(war_if_site_list_t::iterator P = sites.begin() ; P != sites.end() ; P++) { CDelegationBase *pnew_node; SCOPEDATAITEM sdi; pnew_node = new WmsNodeSite(*P); ZeroMemory(&sdi, sizeof(SCOPEDATAITEM)); sdi.mask = SDI_STR| // Displayname is valid SDI_PARAM | // lParam is valid SDI_IMAGE | // nImage is valid SDI_OPENIMAGE | // nOpenImage is valid SDI_PARENT; sdi.relativeID = (HSCOPEITEM)parent; sdi.nImage = pnew_node->GetBitmapIndex(); sdi.nOpenImage = pnew_node->GetBitmapIndex(); sdi.displayname = MMC_CALLBACK; sdi.lParam = (LPARAM)pnew_node; // The cookie HRESULT hr = pConsoleNameSpace->InsertItem(&sdi); _ASSERT( SUCCEEDED(hr) ); pnew_node->SetHandle((HANDLE)sdi.ID); } } return S_OK; }HRESULT WmsNodeServersFolder::OnShow(IConsole *pConsole, BOOL bShow, HSCOPEITEM scopeitem){ AFX_MANAGE_STATE(AfxGetStaticModuleState()); HRESULT hr = S_OK; IHeaderCtrl *pHeaderCtrl = NULL; IResultData *pResultData = NULL; if (bShow) { hr = pConsole->QueryInterface(IID_IHeaderCtrl, (void **)&pHeaderCtrl); _ASSERT(SUCCEEDED(hr)); hr = pConsole->QueryInterface(IID_IResultData, (void **)&pResultData); _ASSERT(SUCCEEDED(hr)); CString hdr1_name, hdr2_name, hdr3_name; hdr1_name.LoadString(IDS_HDRNAME); hdr2_name.LoadString(IDS_HDRSITENAME); hdr3_name.LoadString(IDS_HDRSITEADDR); MAKE_WIDEPTR_FROMTSTR(ptr_hdr1, hdr1_name); MAKE_WIDEPTR_FROMTSTR(ptr_hdr2, hdr2_name); MAKE_WIDEPTR_FROMTSTR(ptr_hdr3, hdr3_name); // Set the column headers in the results pane hr = pHeaderCtrl->InsertColumn( 0, ptr_hdr1, 0, MMCLV_AUTO ); _ASSERT( S_OK == hr ); hr = pHeaderCtrl->InsertColumn( 1, ptr_hdr2, 0, MMCLV_AUTO ); _ASSERT( S_OK == hr ); hr = pHeaderCtrl->InsertColumn( 2, ptr_hdr3, 0, MMCLV_AUTO ); _ASSERT( S_OK == hr ); hr = pResultData->DeleteAllRsltItems(); _ASSERT( SUCCEEDED(hr) ); pHeaderCtrl->Release(); pResultData->Release(); } return hr;}//============================= ACCESS ===================================//============================= INQUIRY ===================================const int WmsNodeServersFolder::GetBitmapIndex(){ return NICON_FOLDER;}const _TCHAR *WmsNodeServersFolder::GetDisplayName(int nCol){ static _TCHAR szDisplayName[256] = {0}; if (!*szDisplayName) { LoadString(g_hinst, IDS_SERVERSNAME, szDisplayName, sizeof(szDisplayName)); } return szDisplayName; }const GUID & WmsNodeServersFolder::getNodeType(){ return thisGuid; }/////////////////////////////// PROTECTED ////////////////////////////////////////////////////////////////// PRIVATE ///////////////////////////////////
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -