234 lines
5.8 KiB
C++
234 lines
5.8 KiB
C++
// DLG_SYSSetup.cpp : implementation file
|
||
//
|
||
|
||
#include "stdafx.h"
|
||
#include "corpsms.h"
|
||
#include "DLG_SYSSetup.h"
|
||
|
||
#ifdef _DEBUG
|
||
#define new DEBUG_NEW
|
||
#undef THIS_FILE
|
||
static char THIS_FILE[] = __FILE__;
|
||
#endif
|
||
|
||
/////////////////////////////////////////////////////////////////////////////
|
||
// DLG_SYSSetup dialog
|
||
|
||
#include "DLG_GroupSelect.h"
|
||
|
||
DLG_SYSSetup::DLG_SYSSetup(CWnd* pParent /*=NULL*/)
|
||
: CDialog(DLG_SYSSetup::IDD, pParent)
|
||
{
|
||
//{{AFX_DATA_INIT(DLG_SYSSetup)
|
||
m_bAutoRecord = FALSE;
|
||
m_strGroup = _T("");
|
||
m_strAutoRecv = _T("");
|
||
m_bAutoExRe = FALSE;
|
||
//}}AFX_DATA_INIT
|
||
memset(&m_Setup,0,sizeof(m_Setup));
|
||
}
|
||
|
||
|
||
void DLG_SYSSetup::DoDataExchange(CDataExchange* pDX)
|
||
{
|
||
CDialog::DoDataExchange(pDX);
|
||
//{{AFX_DATA_MAP(DLG_SYSSetup)
|
||
DDX_Control(pDX, IDC_SYSSETUP_AUTOREAD, m_B_AutoRead);
|
||
DDX_Control(pDX, IDC_SYSSETUP_BAUDRATE, m_L_Baudrate);
|
||
DDX_Control(pDX, IDC_SYSSETUP_MOBILETYPE, m_L_Type);
|
||
DDX_Control(pDX, IDC_SYSSETUP_PORT, m_L_Com);
|
||
DDX_Control(pDX, IDC_SYSSETUP_USEMOBILE, m_B_UseMobile);
|
||
DDX_Control(pDX, IDC_SYSSETUP_AUTOREMSG, m_E_AutoReMsg);
|
||
DDX_Control(pDX, IDC_SYSSETUP_AUTORE, m_B_AutoRe);
|
||
DDX_Control(pDX, IDC_SYSSETUP_AUTODELETE, m_B_AutoDelete);
|
||
DDX_Control(pDX, IDC_SYSSETUP_AUTOCLEARE, m_E_AutoClear);
|
||
DDX_Check(pDX, IDC_SYSSETUP_AUTORECORD, m_bAutoRecord);
|
||
DDX_Text(pDX, IDC_SYSSETUP_AUTORECORDGROUP, m_strGroup);
|
||
DDX_Text(pDX, IDC_SYSSETUP_AUTORERECV, m_strAutoRecv);
|
||
DDV_MaxChars(pDX, m_strAutoRecv, 22);
|
||
DDX_Check(pDX, IDC_SYSSETUP_AUTOEXRE, m_bAutoExRe);
|
||
//}}AFX_DATA_MAP
|
||
}
|
||
|
||
|
||
BEGIN_MESSAGE_MAP(DLG_SYSSetup, CDialog)
|
||
//{{AFX_MSG_MAP(DLG_SYSSetup)
|
||
ON_BN_CLICKED(IDC_SYSSETUP_USEMOBILE, OnSyssetupUsemobile)
|
||
ON_BN_CLICKED(IDC_SYSSETUP_AUTODELETE, OnSyssetupAutodelete)
|
||
ON_BN_CLICKED(IDC_SYSSETUP_AUTORE, OnSyssetupAutore)
|
||
ON_CBN_EDITCHANGE(IDC_SYSSETUP_PORT, OnEditchangeSyssetupPort)
|
||
ON_CBN_SELCHANGE(IDC_SYSSETUP_MOBILETYPE, OnSelchangeSyssetupMobiletype)
|
||
ON_BN_CLICKED(IDC_SYSSETUP_AUTORECORDSELGROUP, OnSyssetupAutorecordselgroup)
|
||
//}}AFX_MSG_MAP
|
||
END_MESSAGE_MAP()
|
||
|
||
/////////////////////////////////////////////////////////////////////////////
|
||
// DLG_SYSSetup message handlers
|
||
|
||
void DLG_SYSSetup::SetParam(SM_Setup setup)
|
||
{
|
||
m_Setup = setup;
|
||
}
|
||
|
||
SM_Setup DLG_SYSSetup::GetParam()
|
||
{
|
||
return m_Setup;
|
||
}
|
||
|
||
BOOL DLG_SYSSetup::OnInitDialog()
|
||
{
|
||
CDialog::OnInitDialog();
|
||
|
||
TCHAR Buf[32]={0};
|
||
m_L_Type.SetCurSel( m_Setup.lMobileType );
|
||
if ( m_Setup.lBaudrate <= 0 )
|
||
{
|
||
m_L_Baudrate.SelectString( -1 , _T("19200") ); //Ĭ<><C4AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||
}
|
||
else
|
||
{
|
||
m_L_Baudrate.SelectString( -1 , _ltot( m_Setup.lBaudrate , Buf , 10 ) );
|
||
}
|
||
m_B_UseMobile.SetCheck( m_Setup.bUseMobile );
|
||
|
||
m_L_Com.LimitText(3);
|
||
m_L_Com.InsertString( 0 , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>") );
|
||
for ( int i=0 ; i< 64 ; i++ )
|
||
{
|
||
_stprintf( Buf , _T("COM%d") , i+1 );
|
||
m_L_Com.InsertString( i+1 , Buf );
|
||
}
|
||
ReSetIrDaSel();
|
||
m_L_Com.SetCurSel(m_Setup.lPort);
|
||
|
||
m_B_AutoRead.SetCheck( m_Setup.bAutoRead );
|
||
m_B_AutoDelete.SetCheck( m_Setup.bAutoDelete );
|
||
m_E_AutoClear.SetWindowText(_ltot(m_Setup.lAutoClearCount , Buf , 10 ));
|
||
m_E_AutoClear.LimitText( 2 );
|
||
|
||
m_B_AutoRe.SetCheck( m_Setup.bAutoRe );
|
||
m_E_AutoReMsg.SetWindowText( m_Setup.szAutoRe );
|
||
m_E_AutoReMsg.LimitText( sizeof(m_Setup.szAutoRe)-8 );
|
||
|
||
m_strAutoRecv = m_Setup.szAutoRecv;
|
||
m_bAutoExRe = m_Setup.bAutoExRe;
|
||
m_bAutoRecord = m_Setup.bAutoRecord;
|
||
m_strGroup = m_Setup.szGroup;
|
||
|
||
|
||
UpdateData(false);
|
||
|
||
return TRUE; // return TRUE unless you set the focus to a control
|
||
// EXCEPTION: OCX Property Pages should return FALSE
|
||
}
|
||
|
||
void DLG_SYSSetup::OnSyssetupUsemobile()
|
||
{
|
||
|
||
}
|
||
|
||
void DLG_SYSSetup::OnSyssetupAutodelete()
|
||
{
|
||
|
||
}
|
||
|
||
void DLG_SYSSetup::OnSyssetupAutore()
|
||
{
|
||
|
||
}
|
||
|
||
void DLG_SYSSetup::OnEditchangeSyssetupPort()
|
||
{
|
||
|
||
}
|
||
|
||
void DLG_SYSSetup::ReSetIrDaSel()
|
||
{
|
||
long lType = m_L_Type.GetCurSel();
|
||
if ( lType == 1 ) //<2F>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD><EFBFBD>ΪNokia,<2C><><EFBFBD>Կ<EFBFBD><D4BF><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߡ<EFBFBD>
|
||
{
|
||
m_L_Com.DeleteString(0);
|
||
m_L_Com.InsertString( 0 , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>") );
|
||
}
|
||
else
|
||
{
|
||
m_L_Com.DeleteString(0);
|
||
m_L_Com.InsertString( 0 , _T(" ") );
|
||
}
|
||
}
|
||
|
||
void DLG_SYSSetup::OnOK()
|
||
{
|
||
if ( !UpdateData(true) )
|
||
return ;
|
||
TCHAR Buf[32];
|
||
m_Setup.bUseMobile = m_B_UseMobile.GetCheck();
|
||
m_Setup.lPort = m_L_Com.GetCurSel();
|
||
m_Setup.lMobileType = m_L_Type.GetCurSel();
|
||
m_L_Baudrate.GetWindowText(Buf , sizeof(Buf) );
|
||
m_Setup.lBaudrate = _ttol( Buf );
|
||
m_Setup.bAutoRead = m_B_AutoRead.GetCheck();
|
||
m_Setup.bAutoDelete = m_B_AutoDelete.GetCheck();
|
||
m_E_AutoClear.GetWindowText(Buf , sizeof(Buf) );
|
||
m_Setup.lAutoClearCount = _ttol(Buf);
|
||
|
||
m_Setup.bAutoRe = m_B_AutoRe.GetCheck();
|
||
m_E_AutoReMsg.GetWindowText(m_Setup.szAutoRe , sizeof(m_Setup.szAutoRe) );
|
||
|
||
_tcscpy(m_Setup.szAutoRecv , m_strAutoRecv );
|
||
m_Setup.bAutoExRe = m_bAutoExRe;
|
||
m_Setup.bAutoRecord = m_bAutoRecord;
|
||
_tcscpy(m_Setup.szGroup,m_strGroup);
|
||
|
||
if ( m_Setup.lMobileType == 0 ) //<2F><>GSM<53>ֻ<EFBFBD>
|
||
{
|
||
if ( m_Setup.lPort <= 0 )
|
||
{
|
||
MessageBox( _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD>!") , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>") , MB_OK|MB_ICONWARNING );
|
||
return ;
|
||
}
|
||
}
|
||
|
||
if ( m_Setup.bAutoRe && _tcslen(m_Setup.szAutoRe)<=0 )
|
||
{
|
||
MessageBox( _T("<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>!") , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>") , MB_OK|MB_ICONWARNING );
|
||
return ;
|
||
}
|
||
|
||
if ( m_Setup.bAutoRecord && _tcslen(m_Setup.szGroup)<=0 )
|
||
{
|
||
MessageBox( _T("<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>!") , _T("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>") , MB_OK|MB_ICONWARNING );
|
||
return ;
|
||
}
|
||
CDialog::OnOK();
|
||
}
|
||
|
||
void DLG_SYSSetup::OnSelchangeSyssetupMobiletype()
|
||
{
|
||
long lType = m_L_Type.GetCurSel();
|
||
if ( lType == 1 ) //<2F>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD><EFBFBD>ΪNokia,<2C><><EFBFBD>Կ<EFBFBD><D4BF><EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߡ<EFBFBD>
|
||
{
|
||
m_L_Baudrate.SelectString( -1 , _T("115200") );
|
||
}
|
||
else
|
||
{
|
||
m_L_Baudrate.SelectString( -1 , _T("19200") );
|
||
}
|
||
|
||
|
||
ReSetIrDaSel();
|
||
}
|
||
|
||
void DLG_SYSSetup::OnSyssetupAutorecordselgroup()
|
||
{
|
||
CMainFrame * pMainFrame = (CMainFrame *)this->GetParent();
|
||
DLG_GroupSelect dlg(this);
|
||
dlg.SetParam( pMainFrame );
|
||
if ( dlg.DoModal() == IDOK )
|
||
{
|
||
UpdateData(true);
|
||
dlg.GetParam(m_strGroup);
|
||
UpdateData(false);
|
||
}
|
||
}
|