diff options
author | Benny Prijono <bennylp@teluu.com> | 2008-03-11 13:18:48 +0000 |
---|---|---|
committer | Benny Prijono <bennylp@teluu.com> | 2008-03-11 13:18:48 +0000 |
commit | 81596a02df25ecfd9e0280b299329f9ba6445c1e (patch) | |
tree | 6cc6321b91adc5d39ea40a5f86028231caba7b0c /pjsip-apps/src/pocketpj | |
parent | f1bb061d0d14ca661dd6d5dc981a1a5204357c2e (diff) |
Ticket #493: added EC settings in dialog
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@1856 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjsip-apps/src/pocketpj')
-rw-r--r-- | pjsip-apps/src/pocketpj/PocketPJ.rc | 17 | ||||
-rw-r--r-- | pjsip-apps/src/pocketpj/PocketPJ.vcc | 10 | ||||
-rw-r--r-- | pjsip-apps/src/pocketpj/PocketPJDlg.cpp | 7 | ||||
-rw-r--r-- | pjsip-apps/src/pocketpj/SettingsDlg.cpp | 57 | ||||
-rw-r--r-- | pjsip-apps/src/pocketpj/SettingsDlg.h | 7 | ||||
-rw-r--r-- | pjsip-apps/src/pocketpj/resource.h | 2 |
6 files changed, 81 insertions, 19 deletions
diff --git a/pjsip-apps/src/pocketpj/PocketPJ.rc b/pjsip-apps/src/pocketpj/PocketPJ.rc index 57e804ca..4e551723 100644 --- a/pjsip-apps/src/pocketpj/PocketPJ.rc +++ b/pjsip-apps/src/pocketpj/PocketPJ.rc @@ -97,7 +97,7 @@ BEGIN WS_BORDER,125,16,12,11
END
-IDD_SETTING DIALOG DISCARDABLE 0, 0, 140, 119
+IDD_SETTING DIALOG DISCARDABLE 0, 0, 140, 127
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "PocketPJ Settings.."
FONT 8, "System"
@@ -111,16 +111,19 @@ BEGIN CONTROL "STUN Srv:",IDC_STUN,"Button",BS_AUTOCHECKBOX |
WS_TABSTOP,7,65,47,10
EDITTEXT IDC_STUN_SRV,56,64,77,12,ES_AUTOHSCROLL
- CONTROL "ICE",IDC_ICE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,80,
+ CONTROL "ICE",IDC_ICE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,7,79,
27,10
CONTROL "SRTP",IDC_SRTP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,47,
- 80,33,10
+ 79,33,10
CONTROL "PUBLISH",IDC_PUBLISH,"Button",BS_AUTOCHECKBOX |
- WS_TABSTOP,85,80,43,10
+ WS_TABSTOP,85,79,43,10
EDITTEXT IDC_DNS,38,49,78,12,ES_AUTOHSCROLL
LTEXT "DNS:",IDC_STATIC,8,50,30,9
- PUSHBUTTON "OK",IDOK,17,98,50,14
- PUSHBUTTON "Cancel",IDCANCEL,73,98,50,14
+ PUSHBUTTON "OK",IDOK,17,106,50,14
+ PUSHBUTTON "Cancel",IDCANCEL,73,106,50,14
+ CONTROL "Suppress echo, tail:",IDC_ECHO_SUPPRESS,"Button",
+ BS_AUTOCHECKBOX | WS_TABSTOP,7,92,79,10
+ EDITTEXT IDC_EC_TAIL,89,91,33,12,ES_AUTOHSCROLL
END
@@ -189,7 +192,7 @@ BEGIN LEFTMARGIN, 7
RIGHTMARGIN, 133
TOPMARGIN, 7
- BOTTOMMARGIN, 112
+ BOTTOMMARGIN, 120
END
END
#endif // APSTUDIO_INVOKED
diff --git a/pjsip-apps/src/pocketpj/PocketPJ.vcc b/pjsip-apps/src/pocketpj/PocketPJ.vcc index b47dce0e..80c3c6f3 100644 --- a/pjsip-apps/src/pocketpj/PocketPJ.vcc +++ b/pjsip-apps/src/pocketpj/PocketPJ.vcc @@ -12,8 +12,8 @@ Class1=CPocketPJApp Class2=CPocketPJDlg
ResourceCount=5
-Resource2=IDD_POCKETPJ_DIALOG
-Resource3=IDD_SETTING
+Resource2=IDD_SETTING
+Resource3=IDD_POCKETPJ_DIALOG
Resource4=IDR_ACC_MENU
Resource1=IDR_MAINFRAME
Class3=CSettingsDlg
@@ -66,7 +66,7 @@ CommandCount=3 [DLG:IDD_SETTING]
Type=1
Class=CSettingsDlg
-ControlCount=15
+ControlCount=17
Control1=IDC_STATIC,static,1342308352
Control2=IDC_DOMAIN,edit,1350631552
Control3=IDC_USER,edit,1350631552
@@ -82,6 +82,8 @@ Control12=IDC_DNS,edit,1350631552 Control13=IDC_STATIC,static,1342308352
Control14=IDOK,button,1342242816
Control15=IDCANCEL,button,1342242816
+Control16=IDC_ECHO_SUPPRESS,button,1342242819
+Control17=IDC_EC_TAIL,edit,1350631552
[CLS:CSettingsDlg]
Type=0
@@ -90,5 +92,5 @@ ImplementationFile=SettingsDlg.cpp BaseClass=CDialog
Filter=D
VirtualFilter=dWC
-LastObject=CSettingsDlg
+LastObject=IDC_ECHO_SUPPRESS
diff --git a/pjsip-apps/src/pocketpj/PocketPJDlg.cpp b/pjsip-apps/src/pocketpj/PocketPJDlg.cpp index 0a38daa7..17608be7 100644 --- a/pjsip-apps/src/pocketpj/PocketPJDlg.cpp +++ b/pjsip-apps/src/pocketpj/PocketPJDlg.cpp @@ -178,7 +178,12 @@ BOOL CPocketPJDlg::Restart() media_cfg.quality = 1; media_cfg.thread_cnt = 1; media_cfg.enable_ice = m_Cfg.m_UseIce; - + + if (m_Cfg.m_EchoSuppress) { + media_cfg.ec_options = PJMEDIA_ECHO_SIMPLE; + media_cfg.ec_tail_len = m_Cfg.m_EcTail; + } + // Init PopUp_Modify(POPUP_REGISTRATION, POPUP_EL_TITLE3, "Initializing.."); status = pjsua_init(&cfg, &log_cfg, &media_cfg); diff --git a/pjsip-apps/src/pocketpj/SettingsDlg.cpp b/pjsip-apps/src/pocketpj/SettingsDlg.cpp index 1d45683b..e5506ce8 100644 --- a/pjsip-apps/src/pocketpj/SettingsDlg.cpp +++ b/pjsip-apps/src/pocketpj/SettingsDlg.cpp @@ -24,6 +24,8 @@ static char THIS_FILE[] = __FILE__; #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") ///////////////////////////////////////////////////////////////////////////// @@ -69,15 +71,21 @@ void CPocketPJSettings::LoadRegistry() dwordVal = 0; if (key.QueryValue(dwordVal, REG_USE_STUN) == ERROR_SUCCESS) { m_UseStun = dwordVal != 0; + } else { + m_UseStun = 0; } if (key.QueryValue(dwordVal, REG_USE_ICE) == ERROR_SUCCESS) { m_UseIce = dwordVal != 0; + } else { + m_UseIce = 0; } if (key.QueryValue(dwordVal, REG_USE_SRTP) == ERROR_SUCCESS) { m_UseSrtp = dwordVal != 0; + } else { + m_UseSrtp = 0; } @@ -86,6 +94,20 @@ void CPocketPJSettings::LoadRegistry() m_UsePublish = dwordVal != 0; } + cbData = sizeof(dwordVal); + if (key.QueryValue(dwordVal, REG_ENABLE_EC) == ERROR_SUCCESS) { + m_EchoSuppress = dwordVal != 0; + } else { + m_EchoSuppress = 0; + } + + cbData = sizeof(dwordVal); + if (key.QueryValue(dwordVal, REG_EC_TAIL) == ERROR_SUCCESS) { + m_EcTail = dwordVal; + } else { + m_EcTail = 2; + } + m_BuddyList.RemoveAll(); DWORD buddyCount = 0; @@ -127,9 +149,12 @@ void CPocketPJSettings::SaveRegistry() 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_BuddyList.GetSize(), REG_BUDDY_CNT); - unsigned i; + int i; for (i=0; i<m_BuddyList.GetSize(); ++i) { CString entry; entry.Format(REG_BUDDY_X, i); @@ -157,6 +182,8 @@ CSettingsDlg::CSettingsDlg(CPocketPJSettings &cfg, CWnd* pParent) m_StunSrv = _T(""); m_User = _T(""); m_Dns = _T(""); + m_EchoSuppress = FALSE; + m_EcTail = _T(""); //}}AFX_DATA_INIT m_Domain = m_Cfg.m_Domain; @@ -168,6 +195,11 @@ CSettingsDlg::CSettingsDlg(CPocketPJSettings &cfg, CWnd* pParent) m_StunSrv = m_Cfg.m_StunSrv; m_User = m_Cfg.m_User; m_Dns = m_Cfg.m_DNS; + m_EchoSuppress = m_Cfg.m_EchoSuppress; + + CString s; + s.Format(_T("%d"), m_Cfg.m_EcTail); + m_EcTail = s; } @@ -184,13 +216,16 @@ void CSettingsDlg::DoDataExchange(CDataExchange* pDX) 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); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CSettingsDlg, CDialog) //{{AFX_MSG_MAP(CSettingsDlg) - // NOTE: the ClassWizard will add message map macros here + ON_BN_CLICKED(IDC_STUN, OnStun) + ON_BN_CLICKED(IDC_ECHO_SUPPRESS, OnEchoSuppress) //}}AFX_MSG_MAP END_MESSAGE_MAP() @@ -203,15 +238,25 @@ int CSettingsDlg::DoModal() if (rc == IDOK) { m_Cfg.m_Domain = m_Domain; - m_Cfg.m_UseIce = m_ICE; + m_Cfg.m_UseIce = m_ICE != 0; m_Cfg.m_Password = m_Passwd; - m_Cfg.m_UsePublish = m_PUBLISH; - m_Cfg.m_UseSrtp = m_SRTP; - m_Cfg.m_UseStun = m_STUN; + 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); } return rc; } + +void CSettingsDlg::OnStun() +{ +} + +void CSettingsDlg::OnEchoSuppress() +{ +} diff --git a/pjsip-apps/src/pocketpj/SettingsDlg.h b/pjsip-apps/src/pocketpj/SettingsDlg.h index 48f0891a..5feb0217 100644 --- a/pjsip-apps/src/pocketpj/SettingsDlg.h +++ b/pjsip-apps/src/pocketpj/SettingsDlg.h @@ -21,6 +21,8 @@ struct CPocketPJSettings bool m_UseSrtp; bool m_UsePublish; CString m_DNS; + bool m_EchoSuppress; + DWORD m_EcTail; CArray<CString,CString> m_BuddyList; @@ -53,6 +55,8 @@ public: CString m_StunSrv; CString m_User; CString m_Dns; + BOOL m_EchoSuppress; + CString m_EcTail; //}}AFX_DATA @@ -71,7 +75,8 @@ protected: // Generated message map functions //{{AFX_MSG(CSettingsDlg) - // NOTE: the ClassWizard will add member functions here + afx_msg void OnStun(); + afx_msg void OnEchoSuppress(); //}}AFX_MSG DECLARE_MESSAGE_MAP() }; diff --git a/pjsip-apps/src/pocketpj/resource.h b/pjsip-apps/src/pocketpj/resource.h index 0af53e86..1ba70d33 100644 --- a/pjsip-apps/src/pocketpj/resource.h +++ b/pjsip-apps/src/pocketpj/resource.h @@ -33,7 +33,9 @@ #define IDC_TITLE2 1018 #define IDC_DNS 1019 #define IDC_TITLE3 1020 +#define IDC_ECHO_SUPPRESS 1020 #define IDC_BUTTON1 1021 +#define IDC_EC_TAIL 1021 #define IDC_BUTTON2 1022 #define IDS_CAP_ONLINE 32772 #define IDS_CAP_OFFLINE 32774 |