3
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 /*******************************************************************************
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 CONDAT (UK)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 ********************************************************************************
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 This software product is the property of Condat (UK) Ltd and may not be
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 disclosed to any third party without the express permission of the owner.
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 ********************************************************************************
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 $Project name: Basic MMI
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 $Project code: BMI (6349)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 $Module: PhoneBook
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 $File: MmiBookPhoneBook.c
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 $Revision: 1.0
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 $Author: Condat(UK)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 $Date: 25/10/00
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 ********************************************************************************
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 Description
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 This module provides the basic phone book functionality
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 ********************************************************************************
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 $History: MmiBookPhoneBook.c
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 CRR: 25302 - xpradipg 10 Nov 2004
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 Description: Should be able to select the number fro the phonebook while
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 sending MMS/EMS.
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 Solution: The new feature to select the number from phonebook while sending
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 sending MMS/EMS.
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 Solution: The new feature to select the number from phonebook while sending
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 Aug 16, 2004 REF: CRR 24323 Deepa M.D
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 Bug:Clenup of sprintf used for tracing
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39 Fix:Replace the char buf[]; sprintf (buf, "...", ...); TRACE_EVENT (buf); statements by TRACE_EVENT_PX
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
42 Sep 29, 2004 REF: CRR 25041 xvilliva
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
43 Bug: add new entry in the FDN , phone gets rebooted.
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
44 Fix: The global variable "menuFDN" is reset while menu is destroyed.
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
46 Jul 21, 2004 REF: CRR 13348 xvilliva
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
47 Bug: After selecting HPLMN manually, the idle screen is not shown.
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
48 Fix: After phonebook menu is created, we store the window handle in a
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
49 global.
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
50
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
51
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
52 25/10/00 Original Condat(UK) BMI version.
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
53
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
54 $End
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
55
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
56 *******************************************************************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
57
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
58
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
59 /******************************************************************************
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
60
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
61 Include Files
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
62
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
63 *******************************************************************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
64 #define ENTITY_MFW
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
65
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
66 /* includes */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
67 #include <string.h>
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
68 #include <stdio.h>
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
69 #include <stdlib.h>
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
70
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
71 #if defined (NEW_FRAME)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
72
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
73 #include "typedefs.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
74 #include "vsi.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
75 #include "pei.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
76 #include "custom.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
77 #include "gsm.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
78
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
79 #else
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
80
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
81 #include "STDDEFS.H"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
82 #include "custom.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
83 #include "gsm.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
84 #include "vsi.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
85
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
86 #endif
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
87
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
88 #include "mfw_sys.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
89
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
90 #include "mfw_mfw.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
91 #include "mfw_win.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
92 #include "mfw_kbd.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
93 #include "mfw_lng.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
94 /* SPR#1428 - SH - New Editor changes */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
95 #ifndef NEW_EDITOR
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
96 #include "mfw_edt.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
97 #endif
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
98 #include "mfw_icn.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
99 #include "mfw_mnu.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
100 #include "mfw_tim.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
101
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
102 #include "mfw_sim.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
103 #include "mfw_cm.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
104 #include "mfw_nm.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
105 #include "mfw_phb.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
106 #include "mfw_mme.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
107 #include "mfw_sat.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
108 #include "mfw_sms.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
109
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
110 #include "dspl.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
111
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
112 #include "ksd.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
113 #include "psa.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
114
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
115 #include "MmiMain.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
116 #include "MmiBookController.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
117 #include "MmiDummy.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
118 #include "MmiDialogs.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
119 #include "MmiLists.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
120
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
121
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
122
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
123 #include "MmiMenu.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
124 #include "mmiCall.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
125 #include "Mmiicons.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
126 #include "MmiIdle.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
127
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
128 #include "MmiSoftKeys.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
129 #include "MmiSounds.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
130 #include "MmiIdle.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
131 #include "MmiNetwork.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
132 #include "mmiSat_i.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
133 #include "MmiAoc.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
134
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
135 #include "gdi.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
136 #include "audio.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
137
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
138 #include "cus_aci.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
139 #include "mfw_ffs.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
140 #include "MmiTimers.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
141
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
142
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
143
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
144
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
145 #include "MmiBookShared.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
146 #include "MmiBookController.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
147
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
148 #include "mmiColours.h"
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
149
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
150 //Jul 21, 2004 REF: CRR 13348 xvilliva
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
151 //This is a global variable used to store the handle, when
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
152 //phonebook menu is created.
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
153 T_MFW_HND gPhbkMenu = NULL;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
154 //Sep 29, 2004 REF: CRR 25041 xvilliva
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
155 extern int menuFDN;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
156
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
157
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
158 /*******************************************************************************
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
159
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
160 Private Methods
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
161
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
162 *******************************************************************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
163
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
164 /*******************************************************************************
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
165
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
166 $Function: bookPhonebookDialog
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
167
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
168 $Description: Dialog function for the phone book application
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
169
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
170 $Returns: none
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
171
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
172 $Arguments: win, window handle
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
173 event, event to be handled
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
174 value, not used
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
175 parameter, reason for call
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
176
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
177 *******************************************************************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
178
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
179 static void bookPhonebookDialog( T_MFW_HND win, USHORT event, SHORT value, void *parameter )
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
180 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
181 T_MFW_WIN *win_data = ((T_MFW_HDR *) win)->data;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
182 T_phbk *data = (T_phbk *) win_data->user;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
183 SHORT *reason = (SHORT *) parameter;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
184
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
185 TRACE_FUNCTION ("bookPhonebookDialog()");
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
186 switch (event)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
187 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
188 case PHBK_INIT:
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
189 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
190 /* Initialise the phone book application.
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
191 Note that we need to deal with a number of different
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
192 initialisation types, depending on the reason given
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
193 */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
194 memset( data->edt_buf_name, '\0', sizeof( data->edt_buf_name ) );
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
195 memset( data->edt_buf_number, '\0', sizeof( data->edt_buf_number ) );
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
196
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
197 /* SPR#1428 - SH - New Editor changes */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
198 #ifndef NEW_EDITOR
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
199 /* No longer needed for NEW_EDITOR - attributes are initialised when editors created*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
200 bookSetEditAttributes( PHONEBOOK_DLG_EDITOR, COLOUR_EDITOR_XX, 0, edtCurBar1, 0,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
201 (char *) data->edt_buf_name, MAX_ALPHA_LEN, &data->edt_attr_name );
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
202 bookSetEditAttributes( PHONEBOOK_DLG_EDITOR, COLOUR_EDITOR_XX, 0, edtCurBar1, 0,
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
203 (char *) data->edt_buf_number, MAX_ALPHA_LEN, &data->edt_attr_number );
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
204 #endif
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
205
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
206 /* deal with the different initialisation types
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
207 */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
208 if ((bookPhoneBookLoading()==BOOK_FAILURE)&&(( *reason )!=PhbkMainMenu))
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
209 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
210 T_DISPLAY_DATA display_info;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
211
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
212 dlg_initDisplayData_TextId( &display_info, TxtNull, TxtNull, TxtPleaseWait, TxtNull , COLOUR_STATUS_WAIT);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
213 dlg_initDisplayData_events( &display_info, (T_VOID_FUNC)NULL, THREE_SECS, KEY_CLEAR );
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
214
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
215 /* Call Info Screen
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
216 */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
217 info_dialog( idle_get_window(), &display_info );
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
218
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
219 bookPhonebookDestroy(data->win);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
220 return;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
221 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
222 switch ( *reason )
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
223 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
224 case PhbkNormal:
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
225 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
226 /* Normal initialisation
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
227 */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
228 data->current.status.book = bookActiveBook(READ);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
229 data->current.index = 1;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
230 data->menu_main_win = bookMenuStart( data->win, bookPhonebookMenuAttributes(), *reason);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
231 data->root_win = data->menu_main_win;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
232 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
233 break;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
234
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
235 case PhbkMainMenu:
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
236 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
237 /* Normal initialisation
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
238 */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
239 data->current.status.book = bookActiveBook(READ);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
240 data->current.index = 1;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
241 data->menu_main_win = bookMenuStart( data->win, bookMainMenuAttributes(), *reason);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
242 data->root_win = data->menu_main_win;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
243 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
244 break;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
245
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
246 case PhbkReplyListNormal:
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
247 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
248 TRACE_EVENT ("PhbkReplyListNormal");
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
249
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
250 /* reply list
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
251 */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
252 bookCallListStart(win,PHB_LRN);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
253 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
254 break;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
255 case PhbkMissedCallsListNormal:
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
256 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
257 /* reply list
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
258 */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
259 bookCallListStart(win,PHB_LMN);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
260 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
261 break;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
262
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
263 case PhbkRedialListNormal:
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
264 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
265 /* Redial list
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
266 */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
267 bookCallListStart(win,PHB_LDN);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
268 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
269 break;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
270
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
271 case PhbkNameEnterIdle:
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
272 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
273 /* Normal initialisation
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
274 */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
275 data->current.status.book = bookActiveBook(READ);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
276 data->current.index = 1;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
277 data->menu_main_win = bookMenuStart( data->win, bookPhonebookMenuAttributes(), *reason);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
278 data->root_win = data->menu_main_win;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
279 data->phbk->UpdateAction = ADD_FROM_IDLE;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
280 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
281 break;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
282
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
283 case PhbkSearchNormal :
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
284 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
285 /* Search window
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
286 */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
287 data->root_win = data->phbk->search_win;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
288 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
289 break;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
290
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
291 case PhbkFromSms :
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
292 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
293 /* Invoked from within SMS, need to remember this
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
294 */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
295 data->phbk->fromSMS = TRUE;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
296 data->root_win = data->phbk->search_win;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
297 data->phbk->current.KindOfSearch = SEARCH_BY_NAME;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
298 data->phbk->current.status.book = bookActiveBook(READ);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
299 data->phbk->search_win = bookSearchStart( data->phbk->win );
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
300
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
301 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
302 break;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
303 //CRR: 25302 - xpradipg 10 Nov 2004
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
304 //New case added to handle the retrival of number from MMS/EMS
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
305 case PhbkFromMms :
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
306 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
307 /* Invoked from within MMS/EMS, need to remember this
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
308 */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
309 data->phbk->fromMmsEms = TRUE;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
310 data->root_win = data->phbk->search_win;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
311 data->phbk->current.KindOfSearch = SEARCH_BY_NAME;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
312 data->phbk->current.status.book = bookActiveBook(READ);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
313 data->phbk->search_win = bookSearchStart( data->phbk->win );
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
314
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
315 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
316 break;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
317
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
318 /*SH*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
319 case PhbkFromSmsSC :
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
320 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
321 /* Invoked from within SMS Service centre, need to remember this
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
322 */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
323 data->phbk->fromSMSSC = TRUE;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
324 data->root_win = data->phbk->search_win;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
325 data->phbk->current.KindOfSearch = SEARCH_BY_NAME;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
326 data->phbk->current.status.book = bookActiveBook(READ);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
327 data->phbk->search_win = bookSearchStart( data->phbk->win );
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
328
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
329 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
330 break;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
331
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
332 case PhbkFromDivert:
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
333 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
334 /* Invoked from within Divert, need to remember this
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
335 */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
336 data->phbk->fromDivert = TRUE;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
337 data->root_win = data->phbk->search_win;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
338 data->phbk->current.KindOfSearch = SEARCH_BY_NAME;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
339 data->phbk->current.status.book = bookActiveBook(READ);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
340 data->phbk->search_win = bookSearchStart( data->phbk->win );
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
341
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
342 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
343
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
344 break;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
345 /*SPR 1392, initialisation from call deflection*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
346 case PhbkFromDeflect:
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
347 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
348 /* Invoked from within Divert, need to remember this
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
349 */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
350 data->phbk->fromDeflect = TRUE;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
351 data->root_win = data->phbk->search_win;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
352 data->phbk->current.KindOfSearch = SEARCH_BY_NAME;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
353 data->phbk->current.status.book = bookActiveBook(READ);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
354 data->phbk->search_win = bookSearchStart( data->phbk->win );
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
355
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
356 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
357
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
358 break;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
359
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
360 default:
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
361 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
362 /* No default action required
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
363 */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
364 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
365 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
366 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
367 break;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
368 case PHBK_SEND_NUMBER:
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
369 TRACE_EVENT ("PHBK_SEND_NUMBER");
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
370 /***************************Go-lite Optimization changes Start***********************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
371 //Aug 16, 2004 REF: CRR 24323 Deepa M.D
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
372 TRACE_EVENT_P3 ("win %p parameter %s data->phbk %p",win,(char*)parameter,data->phbk);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
373 /***************************Go-lite Optimization changes end***********************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
374 strncpy( data->phbk->edt_buf_number, (char*)parameter, PHB_MAX_LEN );
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
375 break;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
376 default:
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
377 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
378 /* No default action required
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
379 */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
380 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
381 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
382 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
383
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
384
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
385
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
386
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
387
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
388
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
389
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
390
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
391
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
392 /*******************************************************************************
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
393
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
394 $Function: bookPhonebookWindowCB
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
395
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
396 $Description: Window call back for the phone book application
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
397
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
398 $Returns: MFW_EVENT_CONSUMED if event is MfwWinVisible, otherwise
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
399 MFW_EVENT_PASSED
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
400
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
401 $Arguments: e, event, w, window handle
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
402
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
403 *******************************************************************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
404
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
405 static int bookPhonebookWindowCB ( MfwEvt e, MfwWin *w )
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
406 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
407 TRACE_FUNCTION ("bookPhonebookWindowCB()");
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
408 return ( e == MfwWinVisible ) ? MFW_EVENT_CONSUMED : MFW_EVENT_PASSED;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
409 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
410
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
411
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
412
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
413
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
414
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
415
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
416
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
417
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
418 /*******************************************************************************
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
419
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
420 $Function: bookPhonebookCreate
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
421
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
422 $Description: Create the phone book application
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
423
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
424 $Returns: Handle of the newly created window or NULL if error
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
425
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
426 $Arguments: parent, handle of parent window
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
427
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
428 *******************************************************************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
429
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
430 static T_MFW_HND bookPhonebookCreate( MfwHnd parent )
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
431 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
432 T_MFW_WIN *win_data;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
433 T_phbk *data;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
434
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
435 TRACE_FUNCTION ("bookPhonebookCreate()");
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
436
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
437 if ( ( data = (T_phbk *) ALLOC_MEMORY( sizeof( T_phbk ) ) ) == NULL )
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
438 return NULL;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
439
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
440 if ( ( data->win = win_create( parent, 0, E_WIN_VISIBLE, (T_MFW_CB) bookPhonebookWindowCB ) ) == NULL )
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
441 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
442 FREE_MEMORY( (void *) data, sizeof( T_phbk ) );
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
443 return NULL;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
444 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
445
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
446 /* Create window handler
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
447 */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
448 data->mmi_control.dialog = (T_DIALOG_FUNC) bookPhonebookDialog;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
449 data->mmi_control.data = data;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
450 win_data = ((T_MFW_HDR *)data->win)->data;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
451 win_data->user = (void *)data;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
452 winShow(data->win);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
453
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
454 /* initialise the options structure
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
455 */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
456 data->root_win = 0;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
457 data->menu_main_win = 0;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
458 data->calls_list_win = 0;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
459 data->menu_options_win = 0;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
460 data->menu_options_win_2 = 0;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
461 data->menu_call_options_win = 0;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
462 data->menu_call_options_win_2 = 0;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
463 data->name_details_win = 0;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
464 data->search_win = 0;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
465 data->fromSMS = FALSE;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
466 data->fromSMSSC = FALSE;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
467 data->fromDivert = FALSE;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
468 data->fromDeflect = FALSE;/*SPR 1392*/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
469 data->parent_win = parent;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
470 data->phbk = data;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
471
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
472 /* return window handle
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
473 */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
474 return data->win;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
475 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
476
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
477
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
478
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
479
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
480
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
481 /*******************************************************************************
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
482
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
483 Public methods
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
484
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
485 *******************************************************************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
486
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
487 /*******************************************************************************
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
488
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
489 $Function: bookPhonebookStart
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
490
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
491 $Description: Starts up the phone book application
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
492
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
493 $Returns: Handle of window or NULL if error
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
494
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
495 $Arguments: parent, window, reason, for invocation
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
496
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
497 *******************************************************************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
498
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
499 T_MFW_HND bookPhonebookStart( MfwHnd parent, int reason )
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
500 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
501 T_MFW_HND win;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
502
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
503 if ( ( win = bookPhonebookCreate( parent ) ) != NULL )
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
504 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
505 SEND_EVENT( win, PHBK_INIT, 0, (int *) &reason );
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
506 if(reason == PhbkMainMenu)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
507 gPhbkMenu = win;//Jul 21, 2004 REF: CRR 13348 xvilliva
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
508 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
509 return win;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
510 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
511
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
512
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
513
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
514
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
515
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
516
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
517 /*******************************************************************************
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
518
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
519 $Function: bookPhonebookDestroy
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
520
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
521 $Description: Destroys the phone book application
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
522
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
523 $Returns: none
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
524
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
525 $Arguments: window, to be destroyed
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
526
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
527 *******************************************************************************/
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
528
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
529 void bookPhonebookDestroy( MfwHnd window )
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
530 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
531 T_MFW_WIN *win = ((T_MFW_HDR *)window)->data;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
532 T_phbk *data = (T_phbk *) win->user;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
533
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
534 TRACE_FUNCTION ("bookPhonebookDestroy()");
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
535
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
536 if ( data )
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
537 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
538 /* need to clean up all of the subordinate windows which
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
539 may have been created during the phone book application
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
540 */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
541 data->root_win = 0;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
542 if (data->search_win)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
543 bookSearchDestroy( data->search_win );
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
544
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
545 if (data->menu_main_win)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
546 bookMenuDestroy(data->menu_main_win);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
547
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
548 if (data->calls_list_win)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
549 bookCallListDestroy(data->calls_list_win);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
550
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
551 if (data->menu_options_win)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
552 bookMenuDestroy(data->menu_options_win);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
553
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
554 if (data->menu_options_win_2)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
555 bookMenuDestroy(data->menu_options_win_2);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
556
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
557 if (data->menu_call_options_win)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
558 bookMenuDestroy(data->menu_call_options_win);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
559
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
560 if (data->menu_call_options_win_2)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
561 {
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
562 menuFDN = 0 ;// Sep 29, 2004 REF: CRR 25041 xvilliva
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
563 bookMenuDestroy(data->menu_call_options_win_2);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
564 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
565
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
566 if (data->name_details_win)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
567 bookDetailsDestroy(data->name_details_win);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
568
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
569 if (data->input_name_win)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
570 bookInputDestroy(data->input_name_win);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
571
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
572 if (data->input_number_win)
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
573 bookInputDestroy(data->input_number_win);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
574
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
575 /* delete the window and free any allocated memory
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
576 */
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
577 winDelete (data->win);
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
578 FREE_MEMORY( (void *) data, sizeof( T_phbk ) );
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
579 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
580 //Jul 21, 2004 REF: CRR 13348 xvilliva
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
581 //While we destroy the menu assign the handle to NULL.
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
582 gPhbkMenu = NULL;
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
583
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
584 }
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
585
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
586
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
587 /*******************************************************************************
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
588
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
589 End Of File
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
590
|
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
591 *******************************************************************************/
|