1 /*
2  * MobileOpalDlg.h
3  *
4  * Sample Windows Mobile application.
5  *
6  * Open Phone Abstraction Library
7  *
8  * Copyright (c) 2008 Vox Lucida
9  *
10  * The contents of this file are subject to the Mozilla Public License
11  * Version 1.0 (the "License"); you may not use this file except in
12  * compliance with the License. You may obtain a copy of the License at
13  * http://www.mozilla.org/MPL/
14  *
15  * Software distributed under the License is distributed on an "AS IS"
16  * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
17  * the License for the specific language governing rights and limitations
18  * under the License.
19  *
20  * The Original Code is Open Phone Abstraction Library.
21  *
22  * The Initial Developer of the Original Code is Vox Lucida (Robert Jongbloed)
23  *
24  * Contributor(s): ______________________________________.
25  *
26  * $Revision: 23882 $
27  * $Author: rjongbloed $
28  * $Date: 2009-12-18 01:57:23 -0600 (Fri, 18 Dec 2009) $
29  */
30 
31 #pragma once
32 #include "afxwin.h"
33 
34 // CMobileOpalDlg dialog
35 class CMobileOpalDlg : public CDialog
36 {
37   // Construction
38 public:
39   CMobileOpalDlg(CWnd* pParent = NULL);	// standard constructor
40   ~CMobileOpalDlg();
41 
42   // Dialog Data
43   enum { IDD = IDD_MOBILEOPAL_DIALOG };
44 
45 protected:
46   virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support
47 
48   // Implementation
49 protected:
50   HICON m_hIcon;
51   CCommandBar m_dlgCommandBar;
52   OpalHandle m_opal;
53   unsigned m_opalVersion;
54   CStatic m_ctrlStatus;
55   CStatic m_ctrlLocalStatus;
56   CComboBox m_ctrlCallAddress;
57   CString m_callAddress;
58   CString m_localAddress;
59   CStringA m_incomingCallToken;
60   CStringA m_currentCallToken;
61   bool m_speakerphone;
62   CStringA m_currentAOR;
63   CStringA m_currentHost;
64   HANDLE m_hPowerRequirement;
65 
66   // Generated message map functions
67   virtual BOOL OnInitDialog();
68   afx_msg void OnSize(UINT nType, int cx, int cy);
69   DECLARE_MESSAGE_MAP()
70 
71   void InitialiseOPAL();
72   void ErrorBox(UINT strId, const OpalMessage * response = NULL);
73   void SetStatusText(UINT ids, const char * str = NULL);
74   void SetCallButton(bool enabled, UINT strId = 0);
75   void AddRecentCall(const CString & uri);
76   void HandleMessage(OpalMessage & message);
77   void EnableFullPower();
78 
79 public:
80   afx_msg void OnTimer(UINT_PTR nIDEvent);
81   afx_msg void OnOK();
82   afx_msg void OnCancel();
83   afx_msg void OnCallAnswer();
84   afx_msg void OnChangedAddress();
85   afx_msg void OnSelectedAddress();
86   afx_msg void OnSpeakerphone();
87   afx_msg void OnMenuOptionsGeneral();
88   afx_msg void OnMenuOptionsCodecs();
89   afx_msg void OnMenuOptionsH323();
90   afx_msg void OnMenuOptionsSIP();
91   afx_msg void OnExit();
92 };
93