📄 mp_apdlg.cpp
字号:
GetDlgItem(IDC_STATIC_DIVAL13)->ShowWindow(SW_SHOW);
GetDlgItem(IDC_STATIC_DIVAL14)->MoveWindow(908, 657, 25, 73);
GetDlgItem(IDC_STATIC_DIVAL14)->ShowWindow(SW_SHOW);
GetDlgItem(IDC_STATIC_DIVAL15)->MoveWindow(934, 657, 25, 73);
GetDlgItem(IDC_STATIC_DIVAL15)->ShowWindow(SW_SHOW);
GetDlgItem(IDC_STATIC_DIVAL16)->MoveWindow(960, 657, 25, 73);
GetDlgItem(IDC_STATIC_DIVAL16)->ShowWindow(SW_SHOW);
GetDlgItem(IDC_STATIC_FR5)->MoveWindow(674, 610, 25, 25);
GetDlgItem(IDC_STATIC_FR5)->ShowWindow(SW_SHOW);
GetDlgItem(IDC_STATIC_FR6)->MoveWindow(700, 610, 25, 25);
GetDlgItem(IDC_STATIC_FR6)->ShowWindow(SW_SHOW);
GetDlgItem(IDC_STATIC_FR7)->MoveWindow(726, 610, 25, 25);
GetDlgItem(IDC_STATIC_FR7)->ShowWindow(SW_SHOW);
GetDlgItem(IDC_STATIC_FR8)->MoveWindow(752, 610, 25, 25);
GetDlgItem(IDC_STATIC_FR8)->ShowWindow(SW_SHOW);
GetDlgItem(IDC_STATIC_FR9)->MoveWindow(778, 610, 25, 25);
GetDlgItem(IDC_STATIC_FR9)->ShowWindow(SW_SHOW);
GetDlgItem(IDC_STATIC_FR10)->MoveWindow(804, 610, 25, 25);
GetDlgItem(IDC_STATIC_FR10)->ShowWindow(SW_SHOW);
GetDlgItem(IDC_STATIC_FR11)->MoveWindow(830, 610, 25, 25);
GetDlgItem(IDC_STATIC_FR11)->ShowWindow(SW_SHOW);
GetDlgItem(IDC_STATIC_FR12)->MoveWindow(856, 610, 25, 25);
GetDlgItem(IDC_STATIC_FR12)->ShowWindow(SW_SHOW);
GetDlgItem(IDC_STATIC_FR13)->MoveWindow(882, 610, 25, 25);
GetDlgItem(IDC_STATIC_FR13)->ShowWindow(SW_SHOW);
GetDlgItem(IDC_STATIC_FR14)->MoveWindow(908, 610, 25, 25);
GetDlgItem(IDC_STATIC_FR14)->ShowWindow(SW_SHOW);
GetDlgItem(IDC_STATIC_FR15)->MoveWindow(934, 610, 25, 25);
GetDlgItem(IDC_STATIC_FR15)->ShowWindow(SW_SHOW);
GetDlgItem(IDC_STATIC_FR16)->MoveWindow(960, 610, 25, 25);
GetDlgItem(IDC_STATIC_FR16)->ShowWindow(SW_SHOW);
}
//((CButton *) GetDlgItem(IDC_RADIO_CH1 + g_iFocus))->SetCheck(1);
CButton_ChDisplay.MoveWindow(20, 50, 75, 25);
// Sylvia
m_btnEventDrivenRec.MoveWindow(20, 80, 75, 25);
GetDlgItem(IDC_CHECK_SWAP12)->MoveWindow(20, 107, 75, 25);
GetDlgItem(IDC_CHECK_NOBORDER)->MoveWindow(20, 132, 80, 20);
CButton_CH_Setting.MoveWindow(20,152, 75, 40);
m_butConnectAll.MoveWindow(20, 192, 75, 40);
CSTatic_Connect.MoveWindow(10, 250, 100, 185);
CButton_Connect.MoveWindow(20, 265, 75, 45);
CButton_Record.MoveWindow(20, 320, 75, 45);
CButton_Snap.MoveWindow(20, 375, 75, 45);
m_STATIC_STATUS.MoveWindow(5,445,110,150);
CSliderCtrl_Volume.MoveWindow(30, 600, 500, 35);
CSliderCtrl_Volume.SetRange(0,100,TRUE);
m_StaticUrlCmd.MoveWindow(30, 637, 75, 18);
m_editUrlCmd.MoveWindow(113, 637, 240, 18);
m_butPost.MoveWindow(356, 637, 35, 18);
m_butGet.MoveWindow(395, 637, 35, 18);
GetDlgItem(IDC_CHECK_SHOW_RETURN)->MoveWindow(435, 637, 85, 18);
CButton_SetDO1.MoveWindow(270, 657, 60, 18);
CEdit_DO1Val.MoveWindow(335, 657, 40, 18);
GetDlgItem(IDC_BUTTON_SETPARAM)->MoveWindow(380, 657, 60, 18);
GetDlgItem(IDC_EDIT_SETPARAM_CNT)->MoveWindow(445, 657, 30, 18);
GetDlgItem(IDC_BUTTON_UPD_REMOTE)->MoveWindow(480, 657, 70, 18);
GetDlgItem(IDC_READ_UART)->MoveWindow(30, 657, 70, 18);
GetDlgItem(IDC_EDIT_UART)->MoveWindow(105, 657, 150, 18);
GetDlgItem(IDC_WRITE_UART)->MoveWindow(30, 677, 70, 18);
GetDlgItem(IDC_EDIT_UART2)->MoveWindow(105, 677, 150, 18);
CButton_EnlargeWnd.MoveWindow(270, 677, 70, 18);
m_btnShrinkWnd.MoveWindow(345, 677, 70, 18);
m_btnGetSys.MoveWindow(420, 677, 50, 18);
GetDlgItem(IDC_BUTTON_GETMD)->MoveWindow(475, 677, 40, 18);
GetDlgItem(IDC_BUTTON_SETMD)->MoveWindow(520, 677, 40, 18);
m_btnTx.MoveWindow(30, 697, 70, 18);
m_editTxFileName.MoveWindow(105, 697, 200, 18);
m_btnTxBrowse.MoveWindow(310, 697, 25, 18);
GetDlgItem(IDC_BUTTON_UPGRADE)->MoveWindow(340, 697, 55, 18);
GetDlgItem(IDC_BUTTON_GET_SECENTRY)->MoveWindow(400, 697, 70, 18);
GetDlgItem(IDC_BUTTON_TALK)->MoveWindow(475, 697, 70, 18);
GetDlgItem(IDC_UPGRADE_STATUS)->MoveWindow(30, 717, 400, 18);
g_Channel_Info[g_iFocus].bEventRecord = FALSE;
g_Channel_Info[g_iFocus].bEventRecording = FALSE;
g_Channel_Info[g_iFocus].dwCBCount = 0;
CheckUI();
int nRet = Initial_Module();
if (nRet != 0)
PostMessage(WM_CLOSE);
#if defined(CHECK_DI) && !defined(_SERVERUTL_ASYNC)
unsigned int dwThreadID;
m_hPollingThread = _beginthreadex(NULL, 0, DIPollingProc, this, 0, &dwThreadID);
m_hStopEvent = CreateEvent(NULL, FALSE, FALSE, NULL);
#endif // CHECK_DI && !_SERVERUTL_ASYNC
SetTimer(1,1000,NULL);
SetTimer(2,10000,NULL);
if (g_iFocus >= g_nMaxChannel)
g_iFocus = g_nMaxChannel - 1;
UpdateData(FALSE);
// could set the bitmap as external file.
// AvSynchronizer_SetChannelOption(g_Channel_Info[0].hChannel, SETCH_BITMAP_FILE, (DWORD) "f:\\pic\\test.jpg", 0);
return TRUE; // return TRUE unless you set the focus to a control
}
// If you add a minimize button to your dialog, you will need the code below
// to draw the icon. For MFC applications using the document/view model,
// this is automatically done for you by the framework.
void CMP_APDlg::OnPaint()
{
if (IsIconic())
{
CPaintDC dc(this); // device context for painting
SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0);
// Center icon in client rectangle
int cxIcon = GetSystemMetrics(SM_CXICON);
int cyIcon = GetSystemMetrics(SM_CYICON);
CRect rect;
GetClientRect(&rect);
int x = (rect.Width() - cxIcon + 1) / 2;
int y = (rect.Height() - cyIcon + 1) / 2;
// Draw the icon
dc.DrawIcon(x, y, m_hIcon);
}
else
{
CDialog::OnPaint();
}
}
// The system calls this function to obtain the cursor to display while the user drags
// the minimized window.
HCURSOR CMP_APDlg::OnQueryDragIcon()
{
return static_cast<HCURSOR>(m_hIcon);
}
void CMP_APDlg::OnBnClickedOk()
{
// TODO: Add your control notification handler code here
CWaitCursor ws;
KillTimer(1);
m_bExit = TRUE;
#if defined(CHECK_DI) && !defined(_SERVERUTL_ASYNC)
SetEvent(m_hStopEvent);
#endif // CHECK_DI && !_SERVERUTL_ASYNC
Release_Module();
WriteParameters();
OnOK();
}
void CMP_APDlg::OnBnClickedRadioCh1()
{
// TODO: Add your control notification handler code here
UpdateData();
// g_iFocus++;
CheckUI();
}
void CMP_APDlg::OnBnClickedRadioCh2()
{
// TODO: Add your control notification handler code here
UpdateData();
// g_iFocus++;
CheckUI();
}
void CMP_APDlg::OnBnClickedRadioCh3()
{
// TODO: Add your control notification handler code here
UpdateData();
// g_iFocus++;
CheckUI();
}
void CMP_APDlg::OnBnClickedRadioCh4()
{
// TODO: Add your control notification handler code here
UpdateData();
// g_iFocus++;
CheckUI();
}
void CMP_APDlg::OnBnClickedButtonChSetting()
{
// TODO: Add your control notification handler code here
DlgChannel.ChannelSetting(g_iFocus,g_Channel_Info[g_iFocus]);
DlgChannel.m_phSrvUtl = &m_hServUtil;
if (DlgChannel.DoModal()==IDOK)
{
g_Channel_Info[g_iFocus]=DlgChannel.m_Ch_Info;
CheckUI();
}
//else
// ;
}
int CMP_APDlg::CheckUI(void)
{
m_btnGetSys.EnableWindow(g_Channel_Info[g_iFocus].bConnecting &&
!(g_Channel_Info[g_iFocus].dwAsyncOper & (asyncSetProp)));
GetDlgItem(IDC_BUTTON_GETMD)->EnableWindow(g_Channel_Info[g_iFocus].bConnecting &&
!(g_Channel_Info[g_iFocus].dwAsyncOper & (asyncSetProp)));
GetDlgItem(IDC_BUTTON_SETMD)->EnableWindow(g_Channel_Info[g_iFocus].bConnecting &&
!(g_Channel_Info[g_iFocus].dwAsyncOper & (asyncSetProp)));
m_editUrlCmd.EnableWindow(g_Channel_Info[g_iFocus].bConnecting &&
!(g_Channel_Info[g_iFocus].dwAsyncOper & (asyncSetProp | asyncHttpOperGet | asyncHttpOperPost)));
GetDlgItem(IDC_CHECK_SHOW_RETURN)->EnableWindow(g_Channel_Info[g_iFocus].bConnecting &&
!(g_Channel_Info[g_iFocus].dwAsyncOper & (asyncSetProp | asyncHttpOperGet | asyncHttpOperPost)));
m_StaticUrlCmd.EnableWindow(g_Channel_Info[g_iFocus].bConnecting &&
!(g_Channel_Info[g_iFocus].dwAsyncOper & (asyncSetProp | asyncHttpOperGet | asyncHttpOperPost)));
m_butGet.EnableWindow(g_Channel_Info[g_iFocus].bConnecting &&
!(g_Channel_Info[g_iFocus].dwAsyncOper & (asyncSetProp | asyncHttpOperGet | asyncHttpOperPost)));
m_butPost.EnableWindow(g_Channel_Info[g_iFocus].bConnecting &&
!(g_Channel_Info[g_iFocus].dwAsyncOper & (asyncSetProp | asyncHttpOperGet | asyncHttpOperPost)));
// m_DIPrompt.EnableWindow(g_Channel_Info[g_iFocus].bConnecting);
// m_DIVal.EnableWindow(g_Channel_Info[g_iFocus].bConnecting);
CButton_SetDO1.EnableWindow(g_Channel_Info[g_iFocus].bConnecting &&
!(g_Channel_Info[g_iFocus].dwAsyncOper & (asyncSetProp | asyncSetDO)));
CEdit_DO1Val.EnableWindow(g_Channel_Info[g_iFocus].bConnecting &&
!(g_Channel_Info[g_iFocus].dwAsyncOper & (asyncSetProp | asyncSetDO)));
GetDlgItem(IDC_BUTTON_SETPARAM)->EnableWindow(g_Channel_Info[g_iFocus].bConnecting &&
!(g_Channel_Info[g_iFocus].dwAsyncOper & (asyncSetProp | asyncSetDO)));
GetDlgItem(IDC_BUTTON_UPD_REMOTE)->EnableWindow(g_Channel_Info[g_iFocus].bConnecting &&
!(g_Channel_Info[g_iFocus].dwAsyncOper & (asyncSetProp)));
GetDlgItem(IDC_EDIT_SETPARAM_CNT)->EnableWindow(g_Channel_Info[g_iFocus].bConnecting &&
!(g_Channel_Info[g_iFocus].dwAsyncOper & (asyncSetProp | asyncSetDO)));
GetDlgItem(IDC_READ_UART)->EnableWindow(g_Channel_Info[g_iFocus].bConnecting &&
!(g_Channel_Info[g_iFocus].dwAsyncOper & (asyncSetProp | asyncUartRead)));
GetDlgItem(IDC_EDIT_UART)->EnableWindow(g_Channel_Info[g_iFocus].bConnecting &&
!(g_Channel_Info[g_iFocus].dwAsyncOper & (asyncSetProp | asyncUartRead)));
GetDlgItem(IDC_WRITE_UART)->EnableWindow(g_Channel_Info[g_iFocus].bConnecting &&
!(g_Channel_Info[g_iFocus].dwAsyncOper & (asyncSetProp | asyncUartWrite)));
GetDlgItem(IDC_EDIT_UART2)->EnableWindow(g_Channel_Info[g_iFocus].bConnecting &&
!(g_Channel_Info[g_iFocus].dwAsyncOper & (asyncSetProp | asyncUartWrite)));
((CButton *) GetDlgItem(IDC_CHECK_NOBORDER))->SetCheck(g_Channel_Info[g_iFocus].bNoBorder?1:0);
GetDlgItem(IDC_BUTTON_GET_SECENTRY)->EnableWindow(g_Channel_Info[g_iFocus].bConnecting &&
!(g_Channel_Info[g_iFocus].dwAsyncOper & (asyncSetProp)));
if (g_Channel_Info[g_iFocus].chServer_Type[2] > '3' && g_Channel_Info[g_iFocus].chServer_Type[2] != '7')
{
BOOL bTalkEnabled = !(g_Channel_Info[g_iFocus].eTalkState == eTalkEstablishing ||
g_Channel_Info[g_iFocus].eTalkState == eTalkStopping);
bTalkEnabled &= (g_Channel_Info[g_iFocus].iAudioMode < 3);
m_btnTx.EnableWindow(bTalkEnabled && g_Channel_Info[g_iFocus].bConnecting && g_Channel_Info[g_iFocus].nTxConn != 2);
GetDlgItem(IDC_BUTTON_TALK)->EnableWindow(!m_bNoAudio && bTalkEnabled && g_Channel_Info[g_iFocus].bConnecting && g_Channel_Info[g_iFocus].nTxConn != 1);
m_editTxFileName.EnableWindow(bTalkEnabled && g_Channel_Info[g_iFocus].bConnecting && g_Channel_Info[g_iFocus].nTxConn == 0);
m_btnTxBrowse.EnableWindow(bTalkEnabled && g_Channel_Info[g_iFocus].bConnecting && g_Channel_Info[g_iFocus].nTxConn == 0);
if (g_Channel_Info[g_iFocus].nTxConn == 1)
m_btnTx.SetWindowText("Stop Tx");
else
m_btnTx.SetWindowText("Start Tx");
if (g_Channel_Info[g_iFocus].nTxConn == 2)
GetDlgItem(IDC_BUTTON_TALK)->SetWindowText("Stop Talk");
else
GetDlgItem(IDC_BUTTON_TALK)->SetWindowText("Start Talk");
}
else
{
m_btnTx.EnableWindow(FALSE);
m_editTxFileName.EnableWindow(FALSE);
m_btnTxBrowse.EnableWindow(FALSE);
GetDlgItem(IDC_BUTTON_TALK)->EnableWindow(FALSE);
}
CButton_ChDisplay.SetCheck(g_Channel_Info[g_iFocus].bNoDisplay?0:1);
CSliderCtrl_Volume.SetPos(g_Channel_Info[g_iFocus].dwVolume);
BOOL bEnabled = FALSE;
if (g_Channel_Info[g_iFocus].chStatus == channelStopped ||
g_Channel_Info[g_iFocus].chStatus == channelConnected)
bEnabled = TRUE;
if ( strlen(g_Channel_Info[g_iFocus].chServer_Type) == 0 )
{
CButton_Record.EnableWindow(FALSE);
CButton_Connect.EnableWindow(FALSE);
CButton_Snap.EnableWindow(FALSE);
}
else
{
CButton_Record.EnableWindow(bEnabled && g_Channel_Info[g_iFocus].bConnecting);
CButton_Snap.EnableWindow(bEnabled && g_Channel_Info[g_iFocus].bConnecting);
CSliderCtrl_Range.EnableWindow(g_Channel_Info[g_iFocus].dwMediaEnd && bEnabled);
CButton_Pause.EnableWindow(bEnabled && g_Channel_Info[g_iFocus].eRtspState == eRtspStPlay);
CButton_Play.EnableWindow(bEnabled && g_Channel_Info[g_iFocus].eRtspState != eRtspStPlay);
}
if (g_Channel_Info[g_iFocus].chStatus != channelStopped)
CButton_Connect.SetWindowText("Disconnect");
else
CButton_Connect.SetWindowText("Connect");
if ( g_Channel_Info[g_iFocus].bRecording == TRUE )
CButton_Record.SetWindowText("Stop");
else
CButton_Record.SetWindowText("Record");
// close non-focus channel's audio
TUPDATECHANNELOPTION tUpdateChannelOptions;
for ( int i=0 ; i < g_nMaxChannel ; i ++ )
{
tUpdateChannelOptions.dwFlags=UPCH_AUDIOOUT;
if (i == g_iFocus)
{
tUpdateChannelOptions.bAudioOut=TRUE;
// mute half duplex when upstream is enabled.
if((g_Channel_Info[g_iFocus].iAudioMode == 2) & (g_Channel_Info[g_iFocus].nTxConn))
{
tUpdateChannelOptions.bAudioOut=FALSE;
}
}
else
tUpdateChannelOptions.bAudioOut=FALSE;
tUpdateChannelOptions.dwFlags=UPCH_AUDIOOUT;
if ( g_Channel_Info[i].hChannel != NULL )
AvSynchronizer_UpdateChannelSettings (g_Channel_Info[i].hChannel,tUpdateChannelOptions );
}
g_Channel_Info[g_iFocus].nTimerDI = 0;
m_btnEventDrivenRec.EnableWindow(g_Channel_Info[g_iFocus].bConnecting);
m_btnEventDrivenRec.SetCheck(g_Channel_Info[g_iFocus].bEventRecord?1:0);
return 0;
}
void CMP_APDlg::OnBnClickedButtonConnect()
{
//TRACE(" Time----------->%ld\n",GetTickCount());
// TODO: Add your control notification handler code here
if ( g_Channel_Info[g_iFocus].chStatus == channelStopped )
{
// call connect channel
EnterCriticalSection(&m_CS);
g_Channel_Info[g_iFocus].bUserStop = FALSE;
g_Channel_Info[g_iFocus].bNeedReconnect = FALSE;
LeaveCriticalSection(&m_CS);
Connect_Channel(g_iFocus);
}
else
{
if ( g_Channel_Info[g_iFocus].bRecording==FALSE)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -