diff options
Diffstat (limited to 'pjsip-apps/src/pocketpj/SettingsDlg.cpp')
-rw-r--r-- | pjsip-apps/src/pocketpj/SettingsDlg.cpp | 376 |
1 files changed, 0 insertions, 376 deletions
diff --git a/pjsip-apps/src/pocketpj/SettingsDlg.cpp b/pjsip-apps/src/pocketpj/SettingsDlg.cpp deleted file mode 100644 index 1357044a..00000000 --- a/pjsip-apps/src/pocketpj/SettingsDlg.cpp +++ /dev/null @@ -1,376 +0,0 @@ -// SettingsDlg.cpp : implementation file -// - -#include "stdafx.h" -#include "PocketPJ.h" -#include "SettingsDlg.h" -#include <pjsua-lib/pjsua.h> -#include <atlbase.h> - -#ifdef _DEBUG -#define new DEBUG_NEW -#undef THIS_FILE -static char THIS_FILE[] = __FILE__; -#endif - -#define REG_PATH _T("pjsip.org\\PocketPC") -#define REG_DOMAIN _T("Domain") -#define REG_USER _T("User") -#define REG_PASSWD _T("Data") -#define REG_USE_STUN _T("UseSTUN") -#define REG_STUN_SRV _T("STUNSrv") -#define REG_DNS _T("DNS") -#define REG_USE_ICE _T("UseICE") -#define REG_USE_SRTP _T("UseSRTP") -#define REG_USE_PUBLISH _T("UsePUBLISH") -#define REG_BUDDY_CNT _T("BuddyCnt") -#define REG_BUDDY_X _T("Buddy%u") -#define REG_ENABLE_EC _T("EnableEC") -#define REG_EC_TAIL _T("ECTail") -#define REG_ENABLE_VAD _T("EnableVAD") -#define REG_ENABLE_TCP _T("EnableTCP") -#define REG_CODEC_CNT _T("CodecCnt") -#define REG_CODEC_X _T("Codec%u") -#define REG_AUTO_ANSWER _T("AutoAnswer") - - -///////////////////////////////////////////////////////////////////////////// -// Settings -CPocketPJSettings::CPocketPJSettings() -: m_UseStun(FALSE), m_UseIce(FALSE), m_UseSrtp(FALSE), m_UsePublish(FALSE), - m_EchoSuppress(TRUE), m_EcTail(200), m_TCP(FALSE), m_VAD(FALSE), - m_AutoAnswer(FALSE) -{ - /* Init codec list */ -#if defined(PJMEDIA_HAS_GSM_CODEC) && PJMEDIA_HAS_GSM_CODEC - m_Codecs.Add(_T("GSM")); -#endif -#if defined(PJMEDIA_HAS_G711_CODEC) && PJMEDIA_HAS_G711_CODEC - m_Codecs.Add(_T("PCMU")); - m_Codecs.Add(_T("PCMA")); -#endif -#if defined(PJMEDIA_HAS_SPEEX_CODEC) && PJMEDIA_HAS_SPEEX_CODEC - m_Codecs.Add(_T("Speex")); -#endif -} - -// Load from registry -void CPocketPJSettings::LoadRegistry() -{ - CRegKey key; - wchar_t textVal[256]; - DWORD dwordVal; - DWORD cbData; - - - if (key.Open(HKEY_CURRENT_USER, REG_PATH) != ERROR_SUCCESS) - return; - - cbData = sizeof(textVal); - if (key.QueryValue(textVal, REG_DOMAIN, &cbData) == ERROR_SUCCESS) { - m_Domain = textVal; - } - - cbData = sizeof(textVal); - if (key.QueryValue(textVal, REG_USER, &cbData) == ERROR_SUCCESS) { - m_User = textVal; - } - - cbData = sizeof(textVal); - if (key.QueryValue(textVal, REG_PASSWD, &cbData) == ERROR_SUCCESS) { - m_Password = textVal; - } - - cbData = sizeof(textVal); - if (key.QueryValue(textVal, REG_STUN_SRV, &cbData) == ERROR_SUCCESS) { - m_StunSrv = textVal; - } - - cbData = sizeof(textVal); - if (key.QueryValue(textVal, REG_DNS, &cbData) == ERROR_SUCCESS) { - m_DNS = textVal; - } - - dwordVal = 0; - if (key.QueryValue(dwordVal, REG_USE_STUN) == ERROR_SUCCESS) { - m_UseStun = dwordVal != 0; - } - - if (key.QueryValue(dwordVal, REG_USE_ICE) == ERROR_SUCCESS) { - m_UseIce = dwordVal != 0; - } - - - if (key.QueryValue(dwordVal, REG_USE_SRTP) == ERROR_SUCCESS) { - m_UseSrtp = dwordVal != 0; - } - - - cbData = sizeof(dwordVal); - if (key.QueryValue(dwordVal, REG_USE_PUBLISH) == ERROR_SUCCESS) { - m_UsePublish = dwordVal != 0; - } - - cbData = sizeof(dwordVal); - if (key.QueryValue(dwordVal, REG_ENABLE_EC) == ERROR_SUCCESS) { - m_EchoSuppress = dwordVal != 0; - } - - cbData = sizeof(dwordVal); - if (key.QueryValue(dwordVal, REG_EC_TAIL) == ERROR_SUCCESS) { - m_EcTail = dwordVal; - } - - cbData = sizeof(dwordVal); - if (key.QueryValue(dwordVal, REG_ENABLE_TCP) == ERROR_SUCCESS) { - m_TCP = dwordVal != 0; - } - - cbData = sizeof(dwordVal); - if (key.QueryValue(dwordVal, REG_ENABLE_VAD) == ERROR_SUCCESS) { - m_VAD = dwordVal != 0; - } - - cbData = sizeof(dwordVal); - if (key.QueryValue(dwordVal, REG_AUTO_ANSWER) == ERROR_SUCCESS) { - m_AutoAnswer = dwordVal != 0; - } - - m_BuddyList.RemoveAll(); - - DWORD buddyCount = 0; - cbData = sizeof(dwordVal); - if (key.QueryValue(dwordVal, REG_BUDDY_CNT) == ERROR_SUCCESS) { - buddyCount = dwordVal; - } - - unsigned i; - for (i=0; i<buddyCount; ++i) { - CString entry; - entry.Format(REG_BUDDY_X, i); - - cbData = sizeof(textVal); - if (key.QueryValue(textVal, entry, &cbData) == ERROR_SUCCESS) { - m_BuddyList.Add(textVal); - } - } - - DWORD codecCount = 0; - cbData = sizeof(dwordVal); - if (key.QueryValue(codecCount, REG_CODEC_CNT) == ERROR_SUCCESS) { - - m_Codecs.RemoveAll(); - - for (i=0; i<codecCount; ++i) { - CString entry; - entry.Format(REG_CODEC_X, i); - - cbData = sizeof(textVal); - if (key.QueryValue(textVal, entry, &cbData) == ERROR_SUCCESS) { - m_Codecs.Add(textVal); - } - } - } - - key.Close(); -} - -// Save to registry -void CPocketPJSettings::SaveRegistry() -{ - CRegKey key; - - if (key.Create(HKEY_CURRENT_USER, REG_PATH) != ERROR_SUCCESS) - return; - - key.SetValue(m_Domain, REG_DOMAIN); - key.SetValue(m_User, REG_USER); - key.SetValue(m_Password, REG_PASSWD); - key.SetValue(m_StunSrv, REG_STUN_SRV); - key.SetValue(m_DNS, REG_DNS); - - key.SetValue(m_UseStun, REG_USE_STUN); - key.SetValue(m_UseIce, REG_USE_ICE); - key.SetValue(m_UseSrtp, REG_USE_SRTP); - key.SetValue(m_UsePublish, REG_USE_PUBLISH); - - key.SetValue(m_EchoSuppress, REG_ENABLE_EC); - key.SetValue(m_EcTail, REG_EC_TAIL); - - key.SetValue(m_TCP, REG_ENABLE_TCP); - key.SetValue(m_VAD, REG_ENABLE_VAD); - key.SetValue(m_AutoAnswer, REG_AUTO_ANSWER); - - key.SetValue(m_BuddyList.GetSize(), REG_BUDDY_CNT); - - int i; - for (i=0; i<m_BuddyList.GetSize(); ++i) { - CString entry; - entry.Format(REG_BUDDY_X, i); - key.SetValue(m_BuddyList.GetAt(i), entry); - } - - DWORD N = m_Codecs.GetSize(); - key.SetValue(N, REG_CODEC_CNT); - for (i=0; i<m_Codecs.GetSize(); ++i) { - CString entry; - entry.Format(REG_CODEC_X, i); - key.SetValue(m_Codecs.GetAt(i), entry); - } - - key.Close(); -} - - -///////////////////////////////////////////////////////////////////////////// -// CSettingsDlg dialog - - -CSettingsDlg::CSettingsDlg(CPocketPJSettings &cfg, CWnd* pParent) - : CDialog(CSettingsDlg::IDD, pParent), m_Cfg(cfg) -{ - //{{AFX_DATA_INIT(CSettingsDlg) - m_Domain = _T(""); - m_ICE = FALSE; - m_Passwd = _T(""); - m_PUBLISH = FALSE; - m_SRTP = FALSE; - m_STUN = FALSE; - m_StunSrv = _T(""); - m_User = _T(""); - m_Dns = _T(""); - m_EchoSuppress = FALSE; - m_EcTail = _T(""); - m_TCP = FALSE; - m_VAD = FALSE; - m_AutoAnswer = FALSE; - //}}AFX_DATA_INIT - - m_Domain = m_Cfg.m_Domain; - m_ICE = m_Cfg.m_UseIce; - m_Passwd = m_Cfg.m_Password; - m_PUBLISH = m_Cfg.m_UsePublish; - m_SRTP = m_Cfg.m_UseSrtp; - m_STUN = m_Cfg.m_UseStun; - m_StunSrv = m_Cfg.m_StunSrv; - m_User = m_Cfg.m_User; - m_Dns = m_Cfg.m_DNS; - m_EchoSuppress = m_Cfg.m_EchoSuppress; - m_TCP = m_Cfg.m_TCP; - m_VAD = m_Cfg.m_VAD; - m_AutoAnswer= m_Cfg.m_AutoAnswer; - - CString s; - s.Format(_T("%d"), m_Cfg.m_EcTail); - m_EcTail = s; - -} - - -void CSettingsDlg::DoDataExchange(CDataExchange* pDX) -{ - CDialog::DoDataExchange(pDX); - //{{AFX_DATA_MAP(CSettingsDlg) - DDX_Control(pDX, IDC_CODECS, m_Codecs); - DDX_Text(pDX, IDC_DOMAIN, m_Domain); - DDX_Check(pDX, IDC_ICE, m_ICE); - DDX_Text(pDX, IDC_PASSWD, m_Passwd); - DDX_Check(pDX, IDC_PUBLISH, m_PUBLISH); - DDX_Check(pDX, IDC_SRTP, m_SRTP); - DDX_Check(pDX, IDC_STUN, m_STUN); - DDX_Text(pDX, IDC_STUN_SRV, m_StunSrv); - DDX_Text(pDX, IDC_USER, m_User); - DDX_Text(pDX, IDC_DNS, m_Dns); - DDX_Check(pDX, IDC_ECHO_SUPPRESS, m_EchoSuppress); - DDX_Text(pDX, IDC_EC_TAIL, m_EcTail); - DDX_Check(pDX, IDC_TCP, m_TCP); - DDX_Check(pDX, IDC_VAD, m_VAD); - DDX_Check(pDX, IDC_AA, m_AutoAnswer); - //}}AFX_DATA_MAP - - - if (m_Codecs.GetCount() == 0) { - int i; - for (i=0; i<m_Cfg.m_Codecs.GetSize(); ++i) { - m_Codecs.AddString(m_Cfg.m_Codecs.GetAt(i)); - } - m_Codecs.SetCurSel(0); - } -} - - -BEGIN_MESSAGE_MAP(CSettingsDlg, CDialog) - //{{AFX_MSG_MAP(CSettingsDlg) - ON_BN_CLICKED(IDC_STUN, OnStun) - ON_BN_CLICKED(IDC_ECHO_SUPPRESS, OnEchoSuppress) - ON_CBN_SELCHANGE(IDC_CODECS, OnSelchangeCodecs) - //}}AFX_MSG_MAP -END_MESSAGE_MAP() - -///////////////////////////////////////////////////////////////////////////// -// CSettingsDlg message handlers - -int CSettingsDlg::DoModal() -{ - int rc = CDialog::DoModal(); - - return rc; -} - -void CSettingsDlg::OnStun() -{ -} - -void CSettingsDlg::OnEchoSuppress() -{ -} - -void CSettingsDlg::OnSelchangeCodecs() -{ - int cur = m_Codecs.GetCurSel(); - if (cur < 1) - return; - - CString codec; - DWORD N; - - m_Codecs.GetLBText(cur, codec); - N = m_Codecs.GetCount(); - m_Codecs.DeleteString(cur); - N = m_Codecs.GetCount(); - m_Codecs.InsertString(0, codec); - N = m_Codecs.GetCount(); - m_Codecs.SetCurSel(0); -} - - -void CSettingsDlg::OnOK() -{ - UpdateData(TRUE); - - m_Cfg.m_Domain = m_Domain; - m_Cfg.m_UseIce = m_ICE != 0; - m_Cfg.m_Password = m_Passwd; - m_Cfg.m_UsePublish = m_PUBLISH != 0; - m_Cfg.m_UseSrtp = m_SRTP != 0; - m_Cfg.m_UseStun = m_STUN != 0; - m_Cfg.m_StunSrv = m_StunSrv; - m_Cfg.m_User = m_User; - m_Cfg.m_DNS = m_Dns; - m_Cfg.m_EchoSuppress= m_EchoSuppress != 0; - m_Cfg.m_EcTail = _ttoi(m_EcTail); - m_Cfg.m_TCP = m_TCP != 0; - m_Cfg.m_VAD = m_VAD != 0; - m_Cfg.m_AutoAnswer = m_AutoAnswer != 0; - - unsigned i; - m_Cfg.m_Codecs.RemoveAll(); - DWORD N = m_Codecs.GetCount(); - for (i=0; i<N; ++i) { - CString codec; - m_Codecs.GetLBText(i, codec); - m_Cfg.m_Codecs.Add(codec); - } - - CDialog::OnOK(); -} |