📄 netctlrecsetdlg.cpp
字号:
// NetCtlRecSetDlg.cpp : implementation file
//
#include "stdafx.h"
#include "Sample.h"
#include "NetCtlRecSetDlg.h"
#include "NetRemoteCtrlDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
extern CNetRemoteCtrlDlg *pNetRemoteCtlDlg;
//--------------------------------------------
//------------------------------------------
extern USER_DVR_PARAMETER *Con_pDVRPara;
extern int ENGLISH;
extern LoginParam m_LoginParam;
RecSetParam m_RecSetParam;
extern TM8100_NET_NODE *pNetNodeHead ;
/////////////////////////////////////////////////////////////////////////////
// CNetCtlRecSetDlg dialog
CNetCtlRecSetDlg::CNetCtlRecSetDlg(CWnd* pParent /*=NULL*/)
: CDialog(CNetCtlRecSetDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CNetCtlRecSetDlg)
m_AllPort = FALSE ;
m_Audio = 0 ;
m_DatePrint = FALSE ;
m_DiskCovery = 0 ;
m_RecRateVarySmart = 0 ;
m_RecRateVarySpeed = 0 ;
m_RecFrames = 25;
m_IFrameInterval = 0;
m_RecQuality = 0;
m_IsCodeRateContinue = FALSE;
m_MaxFrames = 25;
//}}AFX_DATA_INIT
pParent = NULL ;
}
void CNetCtlRecSetDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CNetCtlRecSetDlg)
DDX_Control(pDX, IDC_RREC_DISKOVERLAY_COMBO, m_diskcover);
DDX_Control(pDX, IDC_PORT_COMBO, m_PortCombo);
DDX_Check(pDX, IDC_ALLPORT_CHECK, m_AllPort);
DDX_CBIndex(pDX, IDC_RREC_AUDIO_COMBO, m_Audio);
DDX_Check(pDX, IDC_RREC_DATEPRINT_CHECK, m_DatePrint);
DDX_CBIndex(pDX, IDC_RREC_DISKOVERLAY_COMBO, m_DiskCovery);
DDX_CBIndex(pDX, IDC_RREC_RATEVARYSMART_COMBO, m_RecRateVarySmart);
DDX_CBIndex(pDX, IDC_RREC_RATEVARYSPEED_COMBO, m_RecRateVarySpeed);
DDX_Text(pDX, IDC_RREC_FRAMENUM_EDIT, m_RecFrames);
DDX_Text(pDX, IDC_RREC_IFRAME_INTERVAL, m_IFrameInterval);
DDX_Text(pDX, IDC_RREC_QUALITY, m_RecQuality);
DDX_Check(pDX, IDC_CHECKISCODERATECONTINUE, m_IsCodeRateContinue);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CNetCtlRecSetDlg, CDialog)
//{{AFX_MSG_MAP(CNetCtlRecSetDlg)
ON_BN_CLICKED(IDC_SET_BUTTON, OnSetButton)
ON_CBN_SELCHANGE(IDC_PORT_COMBO, OnSelchangePortCombo)
ON_CBN_EDITCHANGE(IDC_PORT_COMBO, OnEditchangePortCombo)
ON_NOTIFY(UDN_DELTAPOS, IDC_SPIN_FRAMES, OnDeltaposSpinFrames)
ON_EN_CHANGE(IDC_RREC_FRAMENUM_EDIT, OnChangeRrecFramenumEdit)
ON_BN_CLICKED(IDC_CHECKISCODERATECONTINUE, OnCheckiscoderatecontinue)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CNetCtlRecSetDlg message handlers
BOOL CNetCtlRecSetDlg::OnInitDialog()
{
char * l_Set;//=_T("Setup");
char * l_Port;//=_T("Camera");
char * l_AllPort;//=_T("All camera");
char * l_DateStamp;//=_T("Date stamp");
char * l_audio;//=_T("Audio:");
char * l_dynamicsens;//=_T("Picture Comparision Sensitivity:");
char * l_dynamicspeed;//=_T("Rate control:");
char * l_frames;//=_T("Frames:");
char * l_override;//=_T("HDD operation:");
char * l_quality;//=_T("Quality:");
// char * l_Qulity[9];//={_T("Best"),_T("1152K"),_T("768K"),_T("512K"),_T("384K"),_T("256K"),_T("128K")};
char * l_HaveAudio;//=_T("Yes");
char * l_NoAudio;//=_T("No");
char * l_AutoCover;//=_T("Override");;
char * l_AlarmCover;//=_T("Alarm");;
char * l_LowSpeed;//=_T("Slow");
char * l_MidSpeed;//=_T("Mid");
char * l_HighSpeed;//=_T("Fast");
char * l_NoAdjust;//=_T("Default");
char * l_Low;//=_T("Low");
char * l_Mid;//=_T("Mid");
char * l_High;//=_T("High");
if(ENGLISH)
{
l_Set=_T("Setup");
l_Port=_T("Channel");
l_AllPort=_T("All channel");
l_DateStamp=_T("Date stamp");
l_audio=_T("Audio:");
l_dynamicsens=_T("Picture Comparision Sensitivity:");
l_dynamicspeed=_T("Rate control:");
l_frames=_T("Frames:");
l_override=_T("HDD operation:");
l_quality=_T("BitRate Stream:");
l_HaveAudio=_T("Yes");
l_NoAudio=_T("No");
l_AutoCover=_T("Override");;
l_AlarmCover=_T("Alarm");;
l_LowSpeed=_T("Slow");
l_MidSpeed=_T("Mid");
l_HighSpeed=_T("Fast");
l_NoAdjust=_T("Default");
l_Low=_T("Low");
l_Mid=_T("Mid");
l_High=_T("High");
}
else
{
l_Set=_T("设置");
l_Port=_T("通道");
l_AllPort=_T("所有通道");
l_DateStamp=_T("日期叠加");
l_audio=_T("音频:");
l_dynamicsens=_T("码率动态调整灵敏度:");
l_dynamicspeed=_T("码率动态调整速度:");
l_frames=_T("录像帧数:");
l_override=_T("覆盖方式:");
l_quality=_T("码流调整:");
l_HaveAudio=_T("有");
l_NoAudio=_T("无");
l_AutoCover=_T("自动覆盖");
l_AlarmCover=_T("报警提示");
l_LowSpeed=_T("慢速");
l_MidSpeed=_T("中速");
l_HighSpeed=_T("快速");
l_NoAdjust=_T("不调整");
l_Low=_T("低");
l_Mid=_T("中");
l_High=_T("高");
}
CDialog::OnInitDialog();
// TODO: Add extra initialization here
m_PortCombo.ResetContent() ;
///
if(Con_pDVRPara!=NULL)
{
for (int i=0;i<Con_pDVRPara->nPortNo ;i++)
{
CString str ;
str.Format("%s%02d",l_Port,i+1) ;
m_PortCombo.AddString(str) ;
}
m_PortCombo.SetCurSel(0);
}
CComboBox *pCom = (CComboBox *)GetDlgItem(IDC_RREC_AUDIO_COMBO);
pCom->ResetContent();
pCom->AddString(l_NoAudio);
pCom->AddString(l_HaveAudio);
pCom->SetCurSel(0);
m_diskcover.ResetContent();
m_diskcover.AddString(l_AutoCover);
m_diskcover.AddString(l_AlarmCover);
m_diskcover.SetCurSel(0);
pCom = (CComboBox *)GetDlgItem(IDC_RREC_RATEVARYSPEED_COMBO);
pCom->ResetContent();
pCom->AddString(l_LowSpeed);
pCom->AddString(l_MidSpeed);
pCom->AddString(l_HighSpeed);
pCom->SetCurSel(0);
pCom = (CComboBox *)GetDlgItem(IDC_RREC_RATEVARYSMART_COMBO);
pCom->ResetContent();
pCom->AddString(l_NoAdjust);
pCom->AddString(l_Low);
pCom->AddString(l_Mid);
pCom->AddString(l_High);
pCom->SetCurSel(0);
CEdit *pEdit = (CEdit *)GetDlgItem(IDC_RREC_FRAMENUM_EDIT);
pEdit->SetLimitText(2);
CWnd *pWnd ;
pWnd = GetDlgItem(IDC_SET_BUTTON) ;
pWnd->SetWindowText(l_Set);
pWnd = GetDlgItem(IDC_ALLPORT_CHECK) ;
pWnd->SetWindowText(l_AllPort);
pWnd = GetDlgItem(IDC_RREC_DATEPRINT_CHECK) ;
pWnd->SetWindowText(l_DateStamp);
pWnd=GetDlgItem(IDC_STATICAUDIO);
pWnd->SetWindowText(l_audio);
pWnd=GetDlgItem(IDC_STATICDYNAMICSENS);
pWnd->SetWindowText(l_dynamicsens);
pWnd=GetDlgItem(IDC_STATICDYNAMICSPEED);
pWnd->SetWindowText(l_dynamicspeed);
pWnd=GetDlgItem(IDC_STATICFRAMES);
pWnd->SetWindowText(l_frames);
pWnd=GetDlgItem(IDC_STATICOVERRIDE);
pWnd->SetWindowText(l_override);
pWnd=GetDlgItem(IDC_STATICQULITY);
pWnd->SetWindowText(l_quality);
pWnd=GetDlgItem(IDC_RREC_QUALITY);
pWnd->ShowWindow(SW_HIDE);
pWnd=GetDlgItem(IDC_STATICKBS);
pWnd->ShowWindow(SW_HIDE);
/*#ifdef USE_YWTSTRUCT
m_IsCodeRateContinue=TRUE;
UpdateData(FALSE);
OnCheckiscoderatecontinue();
((CButton *)GetDlgItem(IDC_CHECKISCODERATECONTINUE))->ShowWindow(FALSE);
#endif*/
((CButton *)GetDlgItem(IDC_CHECKISCODERATECONTINUE))->ShowWindow(FALSE);
return TRUE ;
}
void CNetCtlRecSetDlg::OnSetButton()
{
char * l_SelectRecordPort;//=_T("Please select record camera!");
char * l_FramesOutRange;
if(ENGLISH)
{
l_SelectRecordPort=_T("Please select record channel!");
l_FramesOutRange=_T("Frames out of range!");
}
else
{
l_SelectRecordPort=_T("请选择录像通道!");
l_FramesOutRange=_T("录像帧数超出范围");
}
BYTE portno;
UpdateData(TRUE) ;
if(m_RecFrames<1||m_RecFrames>m_MaxFrames)
{
AfxMessageBox(l_FramesOutRange);
GetDlgItem(IDC_RREC_FRAMENUM_EDIT)->SetFocus();
return ;
}
if(m_IsCodeRateContinue)
{
if (m_AllPort)
{
pNetRemoteCtlDlg->SetNetRemoteRecSet(0, m_RecQuality, m_RecFrames, m_Audio,
m_RecRateVarySmart, m_RecRateVarySpeed, m_DiskCovery, m_DatePrint) ;
portno=0;
pNetRemoteCtlDlg->SetIFrameInterval(0,m_IFrameInterval);
}
else
{
int i ;
i = m_PortCombo.GetCurSel() ;
if (i < 0)
{
AfxMessageBox(l_SelectRecordPort, IDOK, NULL) ;//_T("请选择录像端口!")
GetDlgItem(IDC_PORT_COMBO)->SetFocus();
return ;
}
pNetRemoteCtlDlg->SetNetRemoteRecSet(i+1, m_RecQuality, m_RecFrames, m_Audio,
m_RecRateVarySmart, m_RecRateVarySpeed, m_DiskCovery, m_DatePrint) ;
portno=i+1;
pNetRemoteCtlDlg->SetIFrameInterval(i+1,m_IFrameInterval);
}
}
else
{
CComboBox *pCom = (CComboBox*)GetDlgItem(IDC_COMBORECQUALITY);
int RecRate = pCom->GetCurSel();
if (m_AllPort)
{
pNetRemoteCtlDlg->SetNetRemoteRecSet(0, RecRate, m_RecFrames, m_Audio,
m_RecRateVarySmart, m_RecRateVarySpeed, m_DiskCovery, m_DatePrint) ;
portno=0;
pNetRemoteCtlDlg->SetIFrameInterval(0,m_IFrameInterval);
}
else
{
int i ;
i = m_PortCombo.GetCurSel() ;
if (i < 0)
{
AfxMessageBox(l_SelectRecordPort, IDOK, NULL) ;//_T("请选择录像端口!")
GetDlgItem(IDC_PORT_COMBO)->SetFocus();
return ;
}
pNetRemoteCtlDlg->SetNetRemoteRecSet(i+1, RecRate, m_RecFrames, m_Audio,
m_RecRateVarySmart, m_RecRateVarySpeed, m_DiskCovery, m_DatePrint) ;
portno=i+1;
pNetRemoteCtlDlg->SetIFrameInterval(i+1,m_IFrameInterval);
}
}
CComboBox *pCom = (CComboBox*)GetDlgItem(IDC_COMBORECQUALITY);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -