208 lines
4.8 KiB
C++
Raw Permalink Normal View History

/*******************************************************
Copyright 2008-2011 Digital Technology Co., Ltd.
<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> PTZButton.cpp
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD> д<EFBFBD><EFBFBD> shizhiping
<EFBFBD><EFBFBD> <EFBFBD>ڣ<EFBFBD> 2009.5
<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD>ť<EFBFBD><EFBFBD>
<EFBFBD><EFBFBD> <EFBFBD>ģ<EFBFBD>
********************************************************/
#include "stdafx.h"
#include "RealPlay.h"
#include "PTZButton.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
int g_iPtzBtnIndex = 0;
/////////////////////////////////////////////////////////////////////////////
// CPTZButton
CPTZButton::CPTZButton()
{
m_iSubBtnIndex = g_iPtzBtnIndex++;
m_lPlayHandle = -1;
}
CPTZButton::~CPTZButton()
{
}
BEGIN_MESSAGE_MAP(CPTZButton, CButton)
//{{AFX_MSG_MAP(CPTZButton)
ON_WM_LBUTTONDOWN()
ON_WM_LBUTTONUP()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CPTZButton message handlers
/*************************************************
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: OnLButtonDown
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ:
*************************************************/
void CPTZButton::OnLButtonDown(UINT nFlags, CPoint point)
{
LONG lPlayHandle = g_pMainDlg->GetPlayHandle();
int iPTZSpeed = g_pMainDlg->GetPTZSpeed();
switch(m_iSubBtnIndex)
{
case 0: //<2F><>̨<EFBFBD><CCA8>
PTZControlAll(lPlayHandle,TILT_UP,0,iPTZSpeed);
break;
case 1: //<2F><>̨<EFBFBD><CCA8>
PTZControlAll(lPlayHandle,TILT_DOWN,0,iPTZSpeed);
break;
case 2: //<2F><>̨<EFBFBD><CCA8>
PTZControlAll(lPlayHandle,PAN_LEFT,0,iPTZSpeed);
break;
case 3: //<2F><>̨<EFBFBD><CCA8>
PTZControlAll(lPlayHandle,PAN_RIGHT,0,iPTZSpeed);
break;
case 4: //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
PTZControlAll(lPlayHandle,ZOOM_IN,0,iPTZSpeed);
break;
case 5: //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
PTZControlAll(lPlayHandle,ZOOM_OUT,0,iPTZSpeed);
break;
case 6: //<2F>۽<EFBFBD><DBBD><EFBFBD>
PTZControlAll(lPlayHandle,FOCUS_NEAR,0,iPTZSpeed);
break;
case 7: //<2F>۽<EFBFBD><DBBD><EFBFBD>
PTZControlAll(lPlayHandle,FOCUS_FAR,0,iPTZSpeed);
break;
case 8: //<2F><>Ȧ<EFBFBD><C8A6>
PTZControlAll(lPlayHandle,IRIS_OPEN,0,iPTZSpeed);
break;
case 9: //<2F><>Ȧ<EFBFBD><C8A6>
PTZControlAll(lPlayHandle,IRIS_CLOSE,0,iPTZSpeed);
break;
case 10: //<2F><><EFBFBD><EFBFBD>
PTZControlAll(lPlayHandle,UP_LEFT,0,iPTZSpeed);
break;
case 11: //<2F><><EFBFBD><EFBFBD>
PTZControlAll(lPlayHandle,UP_RIGHT,0,iPTZSpeed);
break;
case 12: //<2F><><EFBFBD><EFBFBD>
PTZControlAll(lPlayHandle,DOWN_LEFT,0,iPTZSpeed);
break;
case 13: //<2F><><EFBFBD><EFBFBD>
PTZControlAll(lPlayHandle,DOWN_RIGHT,0,iPTZSpeed);
break;
default:
break;
}
CButton::OnLButtonDown(nFlags, point);
}
/*************************************************
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: OnLButtonUp
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֹͣ<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ:
*************************************************/
void CPTZButton::OnLButtonUp(UINT nFlags, CPoint point)
{
// int iChanIndex = pMainDlg->GetCurChanIndex();
LONG lPlayHandle = g_pMainDlg->GetPlayHandle();
int iPTZSpeed = g_pMainDlg->GetPTZSpeed();
switch(m_iSubBtnIndex)
{
case 0: //<2F><>̨<EFBFBD><CCA8>
PTZControlAll(lPlayHandle,TILT_UP,1,iPTZSpeed);
break;
case 1: //<2F><>̨<EFBFBD><CCA8>
PTZControlAll(lPlayHandle,TILT_DOWN,1,iPTZSpeed);
break;
case 2: //<2F><>̨<EFBFBD><CCA8>
PTZControlAll(lPlayHandle,PAN_LEFT,1,iPTZSpeed);
break;
case 3: //<2F><>̨<EFBFBD><CCA8>
PTZControlAll(lPlayHandle,PAN_RIGHT,1,iPTZSpeed);
break;
case 4: //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
PTZControlAll(lPlayHandle,ZOOM_IN,1,iPTZSpeed);
break;
case 5: //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
PTZControlAll(lPlayHandle,ZOOM_OUT,1,iPTZSpeed);
break;
case 6: //<2F>۽<EFBFBD><DBBD><EFBFBD>
PTZControlAll(lPlayHandle,FOCUS_NEAR,1,iPTZSpeed);
break;
case 7: //<2F>۽<EFBFBD><DBBD><EFBFBD>
PTZControlAll(lPlayHandle,FOCUS_FAR,1,iPTZSpeed);
break;
case 8: //<2F><>Ȧ<EFBFBD><C8A6>
PTZControlAll(lPlayHandle,IRIS_OPEN,1,iPTZSpeed);
break;
case 9: //<2F><>Ȧ<EFBFBD><C8A6>
PTZControlAll(lPlayHandle,IRIS_CLOSE,1,iPTZSpeed);
break;
case 10: //<2F><><EFBFBD><EFBFBD>
PTZControlAll(lPlayHandle,UP_LEFT,1,iPTZSpeed);
break;
case 11: //<2F><><EFBFBD><EFBFBD>
PTZControlAll(lPlayHandle,UP_RIGHT,1,iPTZSpeed);
break;
case 12: //<2F><><EFBFBD><EFBFBD>
PTZControlAll(lPlayHandle,DOWN_LEFT,1,iPTZSpeed);
break;
case 13: //<2F><><EFBFBD><EFBFBD>
PTZControlAll(lPlayHandle,DOWN_RIGHT,1,iPTZSpeed);
break;
// case 14: //<2F>Զ<EFBFBD>
// PTZControlAll(lPlayHandle,PAN_AUTO,1,iPTZSpeed);
// break;
default:
break;
}
CButton::OnLButtonUp(nFlags, point);
}
/*************************************************
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: PTZControlAll
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: <EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD>ƺ<EFBFBD><EFBFBD><EFBFBD>
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ:
*************************************************/
void CPTZButton::PTZControlAll(LONG lRealHandle, DWORD dwPTZCommand, DWORD dwStop, int Speed)
{
if(lRealHandle>=0)
{
BOOL ret;
if(Speed>=1)
{
ret = NET_DVR_PTZControlWithSpeed(lRealHandle,dwPTZCommand,dwStop,Speed);
if(!ret)
{
MessageBox("<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>!");
return;
}
}
else
{
ret = NET_DVR_PTZControl(lRealHandle,dwPTZCommand,dwStop);
if(!ret)
{
MessageBox("<EFBFBD><EFBFBD>̨<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>!");
return;
}
}
}
}