Files
coco df489d5640 a
2026-07-03 16:05:30 +08:00

81 lines
1.6 KiB
C++

// SynOperator.cpp: implementation of the CSynOperator class.
//
//////////////////////////////////////////////////////////////////////
#include "geomative.h"
#include "SynOperator.h"
#include "opsyndlg.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
extern CGeoMativeApp theApp;
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CSynOperator::CSynOperator(_ConnectionPtr& pConnection)
{
ASSERT(NULL != pConnection);
m_pConnection = pConnection;
}
CSynOperator::~CSynOperator()
{
}
void CSynOperator::Syn()
{
long lRet = VAL_ZERO;
COpSynDlg* pOpSynDlg = new COpSynDlg(m_pConnection);
pOpSynDlg->Create(IDD_OP_TDH_S_C, AfxGetMainWnd());
InitialSynDlg(pOpSynDlg);
pOpSynDlg->InitialDevShow();
pOpSynDlg->ShowWindow(SW_SHOW);
lRet = pOpSynDlg->RunModalLoop(MLF_SHOWONIDLE); // 开始非模态窗口模态循环
if (RET_OK == lRet)
{
NULL;
}
pOpSynDlg->DestroyWindow();
delete pOpSynDlg;
}
void CSynOperator::InitialSynDlg(COpSynDlg *pOpSynDlg)
{
int iIndex = (int)VAL_ZERO;
CPtrArray olDevList;
CDevice* pDev = NULL;
olDevList.RemoveAll();
theApp.m_pDevManager->GetOLDevList(&olDevList);
iIndex = (int)VAL_ZERO;
while (iIndex < olDevList.GetSize())
{
pDev = NULL;
pDev = (CDevice*)olDevList.GetAt(iIndex);
if (PZ_STATE_NEW != pDev->m_uState)
{
pOpSynDlg->m_cbDESN.AddString(pDev->m_szDevSN);
pOpSynDlg->m_cbDESN.SetItemDataPtr(pOpSynDlg->m_cbDESN.GetCount() - 1, pDev);
}
iIndex++;
}
}