⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 toolbarbottom.cpp

📁 实时监控
💻 CPP
字号:
// ToolbarBottom.cpp : implementation file
//

#include "stdafx.h"
#include "../dvrmanager.h"
#include "ToolbarBottom.h"
#include "Right_add_new.h"
#include "click_btn.h"
#include "../utils/common.h"
#include "../utils/custom_msgs.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CToolbarBottom dialog
#ifdef  VER_CHENGFENG
COLORREF BTN_TRANS	= RGB(50,91,181) ;
COLORREF BTN_BACKTTT = RGB(120,190,236) ;
#else
COLORREF BTN_TRANS	= RGB(87,87,87);
COLORREF BTN_BACKTTT = RGB(100,100,100) ;
#endif

bool m_all_mute = false;
CToolbarBottom * CToolbarBottom::m_ptool=NULL;
//##ModelId=3F90BAA9001D
CToolbarBottom::CToolbarBottom(CWnd* pParent /*=NULL*/)
	: baseclass(CToolbarBottom::IDD, pParent), warning(false), alarming(false)
{
	//{{AFX_DATA_INIT(CToolbarBottom)
	//}}AFX_DATA_INIT
	m_ptool=this;
}
 
//##ModelId=3F90BAA90366
void CToolbarBottom::OnDestroy() 
{
	if(CRight_add_new::m_show_log_file)
		delete(CRight_add_new::m_show_log_file);
	if(CRight_add_new::m_show_zh_decstate)
		delete(CRight_add_new::m_show_zh_decstate);
	if(CRight_add_new::pMapDlg)
		delete CRight_add_new::pMapDlg;
	baseclass::OnDestroy();
}

//##ModelId=3F90BAA90028
void CToolbarBottom::start_warning()
{
	if( alarming )
		return;
	alarming = true;
	warning = false;
	SetTimer(1, 500, NULL);
}

//##ModelId=3F90BAA90031
void CToolbarBottom::stop_warning()
{
	alarming = false;
	KillTimer(1) ;
	//m_warning.SetBitmap(no);
	m_warning.SetBitmaps(IDB_WARNING_NO, BTN_TRANS, IDB_WARNING_NO, BTN_TRANS);
}

//##ModelId=3F90BAA9026C
void CToolbarBottom::DoDataExchange(CDataExchange* pDX)
{
	baseclass::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CToolbarBottom)
	//DDX_Control(pDX, ID_ELECTRON_MAP, m_btn_electron_map);
	DDX_Control(pDX, IDBTN_PLAYERSHOW, m_playershow);
	//DDX_Control(pDX, ID_ZH_DECSTATE, m_decstate);
	DDX_Control(pDX, ID_TALKING, m_talking);
	DDX_Control(pDX, ID_WARNING, m_warning);
	DDX_Control(pDX, ID_MUTE, m_mute);
	//DDX_Control(pDX, IDBTN_25, m_25);
	DDX_Control(pDX, IDBTN_16, m_16);
	DDX_Control(pDX, IDBTN_FULLSCR, m_btn_fullscr);
	DDX_Control(pDX, IDBTN_SEQ, m_btn_seq);
	DDX_Control(pDX, IDBTN_NEW_ADD, m_btn_add_new);
	DDX_Control(pDX, ID_S, m_s);
	DDX_Control(pDX, IDBTN_9, m_9);
	DDX_Control(pDX, IDBTN_6, m_6);
	DDX_Control(pDX, IDBTN_4, m_b4);
	DDX_Control(pDX, IDBTN_1, m_b1);
	DDX_Control(pDX, IDBTN_CLIENT_SETUP, m_setup);
	DDX_Control(pDX, IDBTN_SNAP, m_btn_snap);
	DDX_Control(pDX, IDBTN_LC, m_lc);
	DDX_Control(pDX, IDBTN_VOD, m_vod);
	DDX_Control(pDX, IDBTN_SYSTEM, m_system);
	DDX_Control(pDX, IDBTN_SCHED, m_sched);
	DDX_Control(pDX, IDBTN_RECORD, m_record);
	DDX_Control(pDX, IDBTN_MD, m_md);
	DDX_Control(pDX, IDBTN_LOGIN, m_login);
	DDX_Control(pDX, IDBTN_CHANNEL, m_channel);
	DDX_Control(pDX, IDBTN_CAMERA, m_camera);
	DDX_Control(pDX, IDBTN_BACKUP, m_backup);
	DDX_Control(pDX, IDBTN_ALARM, m_alarm);
	DDX_Control(pDX, IDBTN_SWITCH, m_btn_switch);
	DDX_Control(pDX, IDBTN_EXIT, m_btn_exit);
	DDX_Control(pDX, IDBTN_MIN, m_btn_min);
	//}}AFX_DATA_MAP
	if(talk_status())
	{
	  m_talking.SetBitmaps(IDB_TALK_ON, BTN_TRANS,IDB_TALK_ON , BTN_TRANS);
	}
    else
	{
	  m_talking.SetBitmaps(IDB_TALK_NO, BTN_TRANS,IDB_TALK_NO , BTN_TRANS);
	}
}


BEGIN_MESSAGE_MAP(CToolbarBottom, baseclass)
	//{{AFX_MSG_MAP(CToolbarBottom)
	ON_BN_CLICKED(IDBTN_NEW_ADD,OnShowNewadd)
	ON_BN_CLICKED(IDBTN_EXIT, OnExit)
	ON_BN_CLICKED(IDBTN_MIN, OnMin)
	ON_BN_CLICKED(IDBTN_SWITCH, OnSwitch)
	ON_BN_CLICKED(IDBTN_LOGIN, OnLogin)
	ON_BN_CLICKED(IDBTN_SYSTEM, OnSystem)
	ON_BN_CLICKED(IDBTN_MD, OnMd)
	ON_BN_CLICKED(IDBTN_ALARM, OnAlarm)
	ON_BN_CLICKED(IDBTN_BACKUP, OnBackup)
	ON_BN_CLICKED(IDBTN_CAMERA, OnCamera)
	ON_BN_CLICKED(IDBTN_CHANNEL, OnChannel)
	ON_BN_CLICKED(IDBTN_RECORD, OnRecord)
	ON_BN_CLICKED(IDBTN_SCHED, OnSched)
	ON_BN_CLICKED(IDBTN_VOD, OnVod)
	ON_BN_CLICKED(IDBTN_LC, OnLc)
	ON_BN_CLICKED(IDBTN_SNAP, OnSnap)
	ON_BN_CLICKED(IDBTN_CLIENT_SETUP, OnClientSetup)
	ON_BN_CLICKED(IDBTN_SEQ, OnSeq)
	ON_BN_CLICKED(IDBTN_FULLSCR, OnFullscr)
	ON_BN_CLICKED(IDBTN_16, On16)
	//ON_BN_CLICKED(IDBTN_25, On25)

	ON_BN_CLICKED(IDBTN_PLAYERSHOW, OnShowPlayer)
	ON_BN_CLICKED(ID_TALKING, OnTalk)

	ON_BN_CLICKED(ID_MUTE, OnMute)
	ON_WM_TIMER()
	ON_WM_DESTROY()
	ON_BN_CLICKED(ID_WARNING, OnWarning)
	//}}AFX_MSG_MAP
	MSG2(NTM_CMD_TALKING, Ontalking)

END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CToolbarBottom message handlers

//##ModelId=3F90BAA9028A
void CToolbarBottom::OnExit() 
{
	click_main(IDBTN_EXIT);
}

void CToolbarBottom::OnMin() 
{
	click_main(IDBTN_MIN);
}


//##ModelId=3F90BAA90294
void CToolbarBottom::OnSwitch() 
{
	click_main(IDBTN_SWITCH);
}


//##ModelId=3F90BAA9029E
BOOL CToolbarBottom::OnInitDialog() 
{
	baseclass::OnInitDialog();

	tb_time.join(this, ID_TIME);
	
	addtip(IDBTN_SWITCH, IDS_TIP_BTN_SWITCH);
	addtip(IDBTN_EXIT, IDS_TIP_BTN_EXIT);
	addtip(IDBTN_SNAP, IDS_TIP_BTN_SNAP);
	addtip(ID_ABOUT, IDS_TIP_BTN_ABOUT);
	addtip(IDBTN_CLIENT_SETUP, IDS_TIP_BTN_SETUP);
	addtip(IDBTN_SEQ, IDS_TIP_BTN_SEQ);
	addtip(IDBTN_FULLSCR, IDS_TIP_BTN_FULLSCR);
	addtip(ID_MUTE, IDS_TIP_BTN_MUTE);
	addtip(ID_WARNING, IDS_TIP_BTN_WARNING);
    addtip(IDBTN_PLAYERSHOW, IDS_TIP_BTN_PLAYERSHOW);
	addtip(ID_TALKING, IDS_TIP_BTN_TALKING);

//	m_about.SetTransparent(TRUE);

#define INIT_BTN(x) x.set_bk(BTN_BACKTTT) ;
	INIT_BTN(m_vod);	
	INIT_BTN(m_system);	
	INIT_BTN(m_sched);	
	INIT_BTN(m_record);	
	INIT_BTN(m_md);	
	INIT_BTN(m_login);	
	INIT_BTN(m_channel);	
	INIT_BTN(m_camera);	
	INIT_BTN(m_backup);	
	INIT_BTN(m_alarm);
	INIT_BTN(m_lc);	

	INIT_BTN(m_btn_fullscr);
	INIT_BTN(m_btn_switch);
	INIT_BTN(m_btn_snap);
	INIT_BTN(m_setup);
	INIT_BTN(m_btn_min);
	INIT_BTN(m_btn_exit);
	INIT_BTN(m_btn_seq);
	INIT_BTN(m_btn_add_new);

	INIT_BTN(m_b1);
	INIT_BTN(m_b4);
	INIT_BTN(m_6);
	INIT_BTN(m_9);
	INIT_BTN(m_16);
	//INIT_BTN(m_25);

	m_s.set_cl(RGB(255,255,255));
	m_s.set_dir(CSeparator::dirVertical);

/*
	no = LoadBitmap(AfxGetApp()->m_hInstance, MAKEINTRESOURCE(IDB_WARNING_NO));
	on = LoadBitmap(AfxGetApp()->m_hInstance, MAKEINTRESOURCE(IDB_WARNING_ON));
	off = LoadBitmap(AfxGetApp()->m_hInstance, MAKEINTRESOURCE(IDB_WARNING_OFF));
	mute = LoadBitmap(AfxGetApp()->m_hInstance, MAKEINTRESOURCE(IDB_MUTE));
	unmute = LoadBitmap(AfxGetApp()->m_hInstance, MAKEINTRESOURCE(IDB_UNMUTE));
*/

	//m_warning.SetBitmap(no);
	//m_mute.SetBitmap(unmute);
	//m_warning.DrawTransparent(TRUE);
	//m_mute.DrawTransparent(TRUE);

	m_playershow.SetColor(CButtonST::BTNST_COLOR_BK_IN, BTN_TRANS);
	m_playershow.SetColor(CButtonST::BTNST_COLOR_BK_OUT, BTN_TRANS);
	m_playershow.SetColor(CButtonST::BTNST_COLOR_BK_FOCUS, BTN_TRANS);

    m_talking.SetColor(CButtonST::BTNST_COLOR_BK_IN, BTN_TRANS);
	m_talking.SetColor(CButtonST::BTNST_COLOR_BK_OUT, BTN_TRANS);
	m_talking.SetColor(CButtonST::BTNST_COLOR_BK_FOCUS, BTN_TRANS);

	m_warning.SetColor(CButtonST::BTNST_COLOR_BK_IN, BTN_TRANS);
	m_warning.SetColor(CButtonST::BTNST_COLOR_BK_OUT, BTN_TRANS);
	m_warning.SetColor(CButtonST::BTNST_COLOR_BK_FOCUS, BTN_TRANS);
	
	m_mute.SetColor(CButtonST::BTNST_COLOR_BK_IN, BTN_TRANS);
	m_mute.SetColor(CButtonST::BTNST_COLOR_BK_OUT, BTN_TRANS);
	m_mute.SetColor(CButtonST::BTNST_COLOR_BK_FOCUS, BTN_TRANS);
	
	m_warning.SetBitmaps(IDB_WARNING_NO, BTN_TRANS, IDB_WARNING_NO, BTN_TRANS);
	m_mute.SetBitmaps(IDB_UNMUTE, BTN_TRANS, IDB_UNMUTE, BTN_TRANS);

	m_talking.SetBitmaps(IDB_TALK_NO, BTN_TRANS,IDB_TALK_NO , BTN_TRANS);
	m_playershow.SetBitmaps(IDB_PLAYER_SHOW, BTN_TRANS,IDB_PLAYER_SHOW , BTN_TRANS);
	
	//m_warning.ShowWindow(SW_HIDE) ;
	return TRUE ;
}

extern Popedom_Setting m_login_client_popedom;


//##ModelId=3F90BAA902A8
void CToolbarBottom::OnLogin() 
{
	click_main(IDBTN_LOGIN);
}

//##ModelId=3F90BAA902B2
void CToolbarBottom::OnSystem() 
{
	if(!m_login_client_popedom.remoteos)
	{
        AfxMessageBox(IDS_NOT_POPEDOM);
	    return ;
	}
	click_main(IDBTN_SYSTEM);
}

//##ModelId=3F90BAA902BC
void CToolbarBottom::OnMd() 
{
	if(!m_login_client_popedom.moverecord)
	{
        AfxMessageBox(IDS_NOT_POPEDOM);
	    return ;
	}
	click_main(IDBTN_MD);
}

//##ModelId=3F90BAA902C6
void CToolbarBottom::OnAlarm() 
{
	if(!m_login_client_popedom.alarm)
	{
        AfxMessageBox(IDS_NOT_POPEDOM);
	    return ;
	}
	click_main(IDBTN_ALARM);
}

//##ModelId=3F90BAA902C8
void CToolbarBottom::OnBackup() 
{
	if(!m_login_client_popedom.backup)
	{
        AfxMessageBox(IDS_NOT_POPEDOM );
	    return ;
	}
	click_main(IDBTN_BACKUP);
}

//##ModelId=3F90BAA902D1
void CToolbarBottom::OnCamera() 
{
	if(!m_login_client_popedom.ptzctrl)
	{
        AfxMessageBox(IDS_NOT_POPEDOM);
	    return ;
	}
	click_main(IDBTN_CAMERA);
}

//##ModelId=3F90BAA902DB
void CToolbarBottom::OnChannel() 
{
	if(!m_login_client_popedom.channel)
	{
        AfxMessageBox( IDS_NOT_POPEDOM);
	    return ;
	}
	click_main(IDBTN_CHANNEL);
}

//##ModelId=3F90BAA902E5
void CToolbarBottom::OnRecord() 
{
	if(!m_login_client_popedom.record)
	{
        AfxMessageBox(IDS_NOT_POPEDOM );
	    return ;
	}
	click_main(IDBTN_RECORD);
}

//##ModelId=3F90BAA902EF
void CToolbarBottom::OnSched() 
{
	if(!m_login_client_popedom.timerecord)
	{
        AfxMessageBox(IDS_NOT_POPEDOM);
	    return ;
	}
	click_main(IDBTN_SCHED);
}

//##ModelId=3F90BAA902F9
void CToolbarBottom::OnVod() 
{
	if(!m_login_client_popedom.vedio)
	{
        AfxMessageBox(IDS_NOT_POPEDOM);
	    return ;
	}
	click_main(IDBTN_VOD);
}

//##ModelId=3F90BAA90302
void CToolbarBottom::OnLc() 
{
	if(!m_login_client_popedom.localrecord)
	{
        AfxMessageBox(IDS_NOT_POPEDOM);
	    return ;
	}
	click_main(IDBTN_LC);	
}

//##ModelId=3F90BAA9030C
void CToolbarBottom::OnSnap() 
{
	click_main(IDBTN_SNAP);
}


//##ModelId=3F90BAA90316
void CToolbarBottom::OnClientSetup() 
{
	if(!m_login_client_popedom.localset)
	{
        AfxMessageBox(IDS_NOT_POPEDOM);
	    return ;
	}
	click_main(IDBTN_CLIENT_SETUP);
}

//##ModelId=3F90BAA90321
void CToolbarBottom::OnSeq() 
{
	click_main(IDBTN_SEQ);
}

//##ModelId=3F90BAA9032A
void CToolbarBottom::OnFullscr() 
{
	click_main(IDBTN_FULLSCR);	
}

//##ModelId=3F90BAA90334
void CToolbarBottom::On16() 
{
	click_main(IDBTN_16);
}

//##ModelId=3F90BAA9033E
/*void CToolbarBottom::On25() 
{
	click_main(IDBTN_25);
}*/

//##ModelId=3F90BAA90258
BOOL CToolbarBottom::PreTranslateMessage(MSG* msg)
{
	if( msg->message == WM_KEYDOWN &&
		msg->hwnd == m_btn_exit.m_hWnd )
	{
		if( msg->wParam == VK_RETURN )
			return TRUE;
	}
	return baseclass::PreTranslateMessage(msg);
}

//##ModelId=3F90BAA90348
void CToolbarBottom::OnMute() 
{
	LONG x = AfxGetMainWnd()->SendMessage(WM_TOGGLE_MUTE);
	if( x )
	{
		m_mute.SetBitmaps(IDB_MUTE, BTN_TRANS, IDB_MUTE, BTN_TRANS);
		m_all_mute = true ;
	}
	else
	{
		m_mute.SetBitmaps(IDB_UNMUTE, BTN_TRANS, IDB_UNMUTE, BTN_TRANS);
		m_all_mute = false ;
	}
}

//##ModelId=3F90BAA90352
void CToolbarBottom::OnTimer(UINT nIDEvent) 
{
	if(nIDEvent == 1)
	{
		if( warning )
		{
			if(!m_all_mute)
				Beep(1000,100);
			m_warning.SetBitmaps(IDB_WARNING_ON, BTN_TRANS, IDB_WARNING_ON, BTN_TRANS);
		}
		else
			m_warning.SetBitmaps(IDB_WARNING_OFF, BTN_TRANS, IDB_WARNING_OFF, BTN_TRANS);

		warning = !warning;
	}
	baseclass::OnTimer(nIDEvent);
}

//##ModelId=3F90BAA90370
void CToolbarBottom::OnWarning() 
{
	click_main(ID_WARNING);
}
void CToolbarBottom::OnShowNewadd()
{
	click_main(IDBTN_SHOW_LOG);
}

void CToolbarBottom::OnShowPlayer()
{
	CString m_str;
	m_str.Format(IDS_RUN_DVRPLAYER);
	ShellExecute(NULL, _T("Open"), m_str, NULL, NULL, SW_SHOW);
	
	m_str.Format(IDS_EXECUTE_PLAYER);
	write_log_file(m_str);
}

void CToolbarBottom::OnTalk()
{
	if(!talk_status()) start_talk();
	else  stop_talk();
	UpdateData(true);
}

LRESULT CToolbarBottom::Ontalking(WPARAM w, LPARAM l)
{
	UpdateData(true);
    return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -