huago-corrcet_tools/HuaGoCorrect/A3.cpp

328 lines
6.9 KiB
C++
Raw Normal View History

2020-08-31 08:08:50 +00:00
// A3.cpp : ʵ<><CAB5><EFBFBD>ļ<EFBFBD>
//
#include "stdafx.h"
#include "HuaGoCorrect.h"
#include "A3.h"
#include "afxdialogex.h"
#include "HuaGoCorrectDlg.h"
2020-08-31 08:08:50 +00:00
// CA3 <20>Ի<EFBFBD><D4BB><EFBFBD>
IMPLEMENT_DYNAMIC(CA3, CDialog)
CA3::CA3(CWnd* pParent /*=NULL*/)
: CDialog(CA3::IDD, pParent)
{
}
CA3::~CA3()
{
}
void CA3::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
2021-08-17 01:07:55 +00:00
DDX_Control(pDX, IDC_CMBSPEEDMODE, m_cmbSpeedmode);
2020-08-31 08:08:50 +00:00
}
BEGIN_MESSAGE_MAP(CA3, CDialog)
ON_BN_CLICKED(IDC_BTNGETGRAYSP, &CA3::OnBnClickedBtngetgraysp)
ON_BN_CLICKED(IDC_BTNSETGRAYSP, &CA3::OnBnClickedBtnsetgraysp)
ON_BN_CLICKED(IDC_BTNGETUVSP, &CA3::OnBnClickedBtngetuvsp)
ON_BN_CLICKED(IDC_BTNSETUVSP, &CA3::OnBnClickedBtnsetuvsp)
ON_BN_CLICKED(IDC_BTNGETCOLORSP, &CA3::OnBnClickedBtngetcolorsp)
ON_BN_CLICKED(IDC_BTNSETCOLORSP, &CA3::OnBnClickedBtnsetcolorsp)
ON_BN_CLICKED(IDC_BTNGETSLEEPTIME, &CA3::OnBnClickedBtngetsleeptime)
ON_BN_CLICKED(IDC_BTNSETSLEEPTIME, &CA3::OnBnClickedBtnsetsleeptime)
2021-08-17 01:07:55 +00:00
ON_BN_CLICKED(IDC_BTNSETCLRMAXBRT, &CA3::OnBnClickedBtnsetclrmaxbrt)
ON_BN_CLICKED(IDC_BTNSETGRYMAXBRT, &CA3::OnBnClickedBtnsetgrymaxbrt)
ON_BN_CLICKED(IDC_BTNGETCLRMAXBRT, &CA3::OnBnClickedBtngetclrmaxbrt)
ON_BN_CLICKED(IDC_BTNGETGRYMAXBRT, &CA3::OnBnClickedBtngetgrymaxbrt)
ON_BN_CLICKED(IDC_BTNGETVERSION, &CA3::OnBnClickedBtngetversion)
ON_BN_CLICKED(IDC_BTNSETSPEED, &CA3::OnBnClickedBtnsetspeed)
ON_BN_CLICKED(IDC_BTNGETSPEED, &CA3::OnBnClickedBtngetspeed)
2020-08-31 08:08:50 +00:00
END_MESSAGE_MAP()
// CA3 <20><>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
BOOL CA3::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>Ӷ<EFBFBD><D3B6><EFBFBD><EFBFBD>ij<EFBFBD>ʼ<EFBFBD><CABC>
2021-08-17 01:07:55 +00:00
for (size_t i = 0; i < speedmodeMap.size(); i++)
{
m_cmbSpeedmode.InsertString(i, speedmodeMapString[i]);
}
2020-08-31 08:08:50 +00:00
return TRUE; // return TRUE unless you set the focus to a control
// <20>쳣: OCX <20><><EFBFBD><EFBFBD>ҳӦ<D2B3><D3A6><EFBFBD><EFBFBD> FALSE
}
void CA3::OnBnClickedBtngetsp()
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
void CA3::OnBnClickedBtnsetsp()
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}
void CA3::OnBnClickedBtngetgraysp()
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
OnGetOrSetSp(true, 0);
}
void CA3::OnBnClickedBtnsetgraysp()
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
OnGetOrSetSp(false, 0);
}
void CA3::OnBnClickedBtngetuvsp()
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
OnGetOrSetSp(true, 2);
}
void CA3::OnBnClickedBtnsetuvsp()
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
OnGetOrSetSp(false, 2);
}
void CA3::OnBnClickedBtngetcolorsp()
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
OnGetOrSetSp(true, 1);
}
void CA3::OnBnClickedBtnsetcolorsp()
{
OnGetOrSetSp(false, 1);
}
2021-08-17 01:07:55 +00:00
void CA3::OnGetOrSetSp(bool get, int type)
{
int sp;
CString str_sp;
auto parent = (CHuaGoCorrectDlg*)GetParent();
int itemid = type == 0 ? IDC_LBGRAYSP : (type == 1 ? IDC_LBCOLORSP : IDC_LBGUVSP); //IDC_LBCOLORSP
2021-08-17 01:07:55 +00:00
if (parent->m_drv.get() && parent->m_drv->IsConnected()) {
if (get)
{
parent->m_drv->GetSptime(type, sp);
str_sp.Format(L"%d", sp);
SetDlgItemText(itemid, str_sp);
}
else
{
GetDlgItemText(itemid, str_sp);
USES_CONVERSION;
std::string str(W2A(str_sp));
int value = atoi(str.c_str());
parent->m_drv->SetSptime(type, value);
}
}
}
void CA3::OnGetOrSetSleepTime(bool get, int type)
{
int sp;
CString str_sp;
auto parent = (CHuaGoCorrectDlg*)GetParent();
int itemid = type == 0 ? IDC_LBGRAYSP : (type == 1 ? IDC_LBCOLORSP : IDC_LBGUVSP); //IDC_LBCOLORSP
2021-08-17 01:07:55 +00:00
if (parent->m_drv.get() && parent->m_drv->IsConnected()) {
if (get)
{
parent->m_drv->GetSptime(type, sp);
str_sp.Format(L"%d", sp);
SetDlgItemText(itemid, str_sp);
}
else
{
GetDlgItemText(itemid, str_sp);
USES_CONVERSION;
std::string str(W2A(str_sp));
int value = atoi(str.c_str());
parent->m_drv->SetSptime(type, value);
}
}
2021-08-17 01:07:55 +00:00
}
void CA3::UpdateMaxBright(bool get, int id)
{
int sp;
CString str_sp;
auto parent = (CHuaGoCorrectDlg*)GetParent();
if (parent->m_drv.get() && parent->m_drv->IsConnected()) {
if (get)
{
unsigned int val = 0;
parent->m_drv->GetFlatMaxBright(id == IDC_LBCLRMAXBRT, val);
str_sp.Format(L"%d", val);
SetDlgItemText(id, str_sp);
}
else
{
GetDlgItemText(id, str_sp);
USES_CONVERSION;
std::string str(W2A(str_sp));
int value = atoi(str.c_str());
if (value <= 0) value = 180;
parent->m_drv->SetFlatMaxBright(id == IDC_LBCLRMAXBRT, value);
}
}
}
void CA3::UpdateSleepTime(bool get)
{
int sp;
CString str_sp;
auto parent = (CHuaGoCorrectDlg*)GetParent();
2021-08-17 01:07:55 +00:00
if (parent->m_drv.get() && parent->m_drv->IsConnected()) {
if (get)
{
parent->m_drv->GetSleepTime(sp);
str_sp.Format(L"%d", sp);
SetDlgItemText(IDC_LBSLEEPTIME, str_sp);
}
else
{
GetDlgItemText(IDC_LBSLEEPTIME, str_sp);
USES_CONVERSION;
std::string str(W2A(str_sp));
int value = atoi(str.c_str());
if (value <= 0) value = 60;
parent->m_drv->SetSleepTime(value);
}
}
}
void CA3::OnBnClickedBtngetsleeptime()
{
UpdateSleepTime(true);
}
void CA3::OnBnClickedBtnsetsleeptime()
{
UpdateSleepTime(false);
2021-08-17 01:07:55 +00:00
}
void CA3::OnBnClickedBtnsetclrmaxbrt()
{
UpdateMaxBright(false, IDC_LBCLRMAXBRT);
}
void CA3::OnBnClickedBtnsetgrymaxbrt()
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
UpdateMaxBright(false, IDC_LBGRYMAXBRT);
}
void CA3::OnBnClickedBtngetclrmaxbrt()
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
UpdateMaxBright(true, IDC_LBCLRMAXBRT);
}
void CA3::OnBnClickedBtngetgrymaxbrt()
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
UpdateMaxBright(true, IDC_LBGRYMAXBRT);
}
void CA3::OnBnClickedBtngetversion()
{
auto parent = (CHuaGoCorrectDlg*)GetParent();
if (parent != NULL)
{
if (parent->m_drv.get() && parent->m_drv->IsConnected()) {
auto kversion = parent->m_drv->GetKernelVersion();
CString version(kversion.c_str());
SetDlgItemText(IDC_LBKERNEL_VERSION, version);
}
}
}
void CA3::OnBnClickedBtnsetspeed()
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
updatespeedmode(false);
}
void CA3::OnBnClickedBtngetspeed()
{
// TODO: <20>ڴ<EFBFBD><DAB4><EFBFBD><EFBFBD>ӿؼ<D3BF>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
updatespeedmode(true);
}
void CA3::updatespeedmode(bool get)
{
auto parent = (CHuaGoCorrectDlg*)GetParent();
if (parent != NULL)
{
if (parent->m_drv.get() && parent->m_drv->IsConnected()) {
int speedmode;
if (get)
{
parent->m_drv->GetSpeedMode(speedmode, true);
bool bfound = false;
for (size_t i = 0; i < speedmodeMap.size(); i++)
{
if (speedmodeMap[i].Speedmode == speedmode)
{
m_cmbSpeedmode.SetCurSel(i);
OnGetOrSetSp(true, 0);//<2F><><EFBFBD>»Ҷ<C2BB>sp
OnGetOrSetSp(true, 1);//<2F><><EFBFBD>²<EFBFBD>ɫsp
bfound = true;
break;
}
}
if (!bfound)
MessageBox(L"δ<EFBFBD>ҵ<EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD>ٶ<EFBFBD>ģʽ<EFBFBD><EFBFBD>", L"<EFBFBD><EFBFBD>ʾ", MB_OK | MB_ICONINFORMATION);
}
else
{
int cmbindex = m_cmbSpeedmode.GetCurSel();
if (cmbindex != -1)
{
auto t_speedmode = speedmodeMap[cmbindex];
parent->m_drv->GetSpeedMode(t_speedmode.Speedmode, false);
parent->m_drv->SetSptime(0, t_speedmode.GraySp);
parent->m_drv->SetSptime(1, t_speedmode.ColorSp);
}
}
}
else
{
MessageBox(L"δ<EFBFBD>ҵ<EFBFBD>ɨ<EFBFBD><EFBFBD><EFBFBD>ǣ<EFBFBD>", L"<EFBFBD><EFBFBD>ʾ", MB_OK | MB_ICONINFORMATION);
}
}
}