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

📄 ~toolbarbottom.~cpp

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

#include "stdafx.h"
#include "../dvrmanager.h"
#include "ToolbarBottom.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


CToolbarBottom::CToolbarBottom(CWnd* pParent /*=NULL*/)
	: baseclass(CToolbarBottom::IDD, pParent), warning(false), alarming(false)
{
	//{{AFX_DATA_INIT(CToolbarBottom)
	//}}AFX_DATA_INIT

	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));
}

void CToolbarBottom::OnDestroy() 
{
	baseclass::OnDestroy();
	
	DeleteObject(on);
	DeleteObject(off);
	DeleteObject(mute);
	DeleteObject(unmute);
}

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

void CToolbarBottom::stop_warning()
{
	alarming = false;
	KillTimer(1);
	m_warning.SetBitmap(no);
}

void CToolbarBottom::DoDataExchange(CDataExchange* pDX)
{
	baseclass::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CToolbarBottom)
	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, 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);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CToolbarBottom, baseclass)
	//{{AFX_MSG_MAP(CToolbarBottom)
	ON_BN_CLICKED(IDBTN_EXIT, OnExit)
	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(ID_MUTE, OnMute)
	ON_WM_TIMER()
	ON_WM_DESTROY()
	ON_BN_CLICKED(ID_WARNING, OnWarning)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

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

void CToolbarBottom::OnExit() 
{
	click_main(IDBTN_EXIT);
}

void CToolbarBottom::OnSwitch() 
{
	click_main(IDBTN_SWITCH);
}

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);

//	m_about.SetTransparent(TRUE);

#define INIT_BTN(x) x.set_bk(RGB(100,100,100));
	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_exit);
	INIT_BTN(m_btn_seq);

	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);

	m_warning.SetBitmap(no);
	m_mute.SetBitmap(unmute);
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

void CToolbarBottom::OnLogin() 
{
	click_main(IDBTN_LOGIN);
}

void CToolbarBottom::OnSystem() 
{
	click_main(IDBTN_SYSTEM);
}

void CToolbarBottom::OnMd() 
{
	click_main(IDBTN_MD);
}

void CToolbarBottom::OnAlarm() 
{
	click_main(IDBTN_ALARM);
}

void CToolbarBottom::OnBackup() 
{
	click_main(IDBTN_BACKUP);
}

void CToolbarBottom::OnCamera() 
{
	click_main(IDBTN_CAMERA);
}

void CToolbarBottom::OnChannel() 
{
	click_main(IDBTN_CHANNEL);
}

void CToolbarBottom::OnRecord() 
{
	click_main(IDBTN_RECORD);
}

void CToolbarBottom::OnSched() 
{
	click_main(IDBTN_SCHED);
}

void CToolbarBottom::OnVod() 
{
	click_main(IDBTN_VOD);
}

void CToolbarBottom::OnLc() 
{
	click_main(IDBTN_LC);	
}

void CToolbarBottom::OnSnap() 
{
	click_main(IDBTN_SNAP);
}


void CToolbarBottom::OnClientSetup() 
{
	click_main(IDBTN_CLIENT_SETUP);
}

void CToolbarBottom::OnSeq() 
{
	click_main(IDBTN_SEQ);
}

void CToolbarBottom::OnFullscr() 
{
	click_main(IDBTN_FULLSCR);	
}

void CToolbarBottom::On16() 
{
	click_main(IDBTN_16);
}

void CToolbarBottom::On25() 
{
	click_main(IDBTN_25);
}

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);
}

void CToolbarBottom::OnMute() 
{
	LONG x = AfxGetMainWnd()->SendMessage(WM_TOGGLE_MUTE);
	if( x )
		m_mute.SetBitmap(mute);
	else
		m_mute.SetBitmap(unmute);
}

void CToolbarBottom::OnTimer(UINT nIDEvent) 
{
	if(nIDEvent == 1)
	{
		if( warning )
		{
			m_warning.SetBitmap(on);
		}
		else
			m_warning.SetBitmap(off);
		warning = !warning;
	}
	baseclass::OnTimer(nIDEvent);
}

void CToolbarBottom::OnWarning() 
{
	click_main(ID_WARNING);
}

⌨️ 快捷键说明

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