|
|
#include "PortsControlPage.h"
#include "Common.h"
#include "wlbsparm.h"
#include "CommonUtils.h"
#include "ResourceString.h"
BEGIN_MESSAGE_MAP( PortsControlPage, CPropertyPage ) ON_WM_HELPINFO() ON_WM_CONTEXTMENU() END_MESSAGE_MAP()
void PortsControlPage::DoDataExchange( CDataExchange* pDX ) { CPropertyPage::DoDataExchange( pDX );
DDX_Control( pDX, IDC_PORTS, portList ); }
PortsControlPage::PortsControlPage( ClusterData* p_clusterData, unsigned long* portSelected, UINT ID ) : m_clusterData( p_clusterData ), m_portSelected( portSelected ), CPropertyPage( ID ) { }
BOOL PortsControlPage::OnInitDialog() { CPropertyPage::OnInitDialog();
// fill the portList with available ports.
// first is allow user ability to select
// all ports.
portList.AddString( GETRESOURCEIDSTRING( IDS_PORTS_ALL ) );
wchar_t buf[Common::BUF_SIZE];
map< long, PortDataELB>::iterator topELB; for( topELB = m_clusterData->portELB.begin(); topELB != m_clusterData->portELB.end(); ++topELB ) { swprintf( buf, L"%d", (*topELB).second._startPort ); portList.AddString( buf ); }
map< long, PortDataULB>::iterator topULB; for( topULB = m_clusterData->portULB.begin(); topULB != m_clusterData->portULB.end(); ++topULB ) { swprintf( buf, L"%d", (*topULB).second._startPort ); portList.AddString( buf ); }
map< long, PortDataF>::iterator topF; for( topF = m_clusterData->portF.begin(); topF != m_clusterData->portF.end(); ++topF ) { swprintf( buf, L"%d", (*topF).second._startPort ); portList.AddString( buf ); }
map< long, PortDataD>::iterator topD; for( topD = m_clusterData->portD.begin(); topD != m_clusterData->portD.end(); ++topD ) { swprintf( buf, L"%d", (*topD).second._startPort ); portList.AddString( buf );
}
// make the all ports selection the
// default selection.
portList.SelectString( -1, GETRESOURCEIDSTRING( IDS_PORTS_ALL ) ); return TRUE; }
void PortsControlPage::OnOK() { // get port which needs to be affected.
int currentSelection = portList.GetCurSel(); wchar_t buf[ Common::BUF_SIZE ]; portList.GetLBText( currentSelection, buf );
if( _bstr_t ( buf ) == GETRESOURCEIDSTRING( IDS_PORTS_ALL ) ) { *m_portSelected = Common::ALL_PORTS; } else { *m_portSelected = _wtoi( buf ); }
CPropertyPage::OnOK(); }
BOOL PortsControlPage::OnHelpInfo (HELPINFO* helpInfo ) { if( helpInfo->iContextType == HELPINFO_WINDOW ) { ::WinHelp( static_cast<HWND> ( helpInfo->hItemHandle ), CVY_CTXT_HELP_FILE, HELP_WM_HELP, (ULONG_PTR ) g_aHelpIDs_IDD_PORTS_CONTROL_PAGE ); }
return TRUE; }
void PortsControlPage::OnContextMenu( CWnd* pWnd, CPoint point ) { ::WinHelp( m_hWnd, CVY_CTXT_HELP_FILE, HELP_CONTEXTMENU, (ULONG_PTR ) g_aHelpIDs_IDD_PORTS_CONTROL_PAGE ); }
|