|
1 /* |
|
2 * Copyright (c) 2006-2006 Nokia Corporation and/or its subsidiary(-ies). |
|
3 * All rights reserved. |
|
4 * This component and the accompanying materials are made available |
|
5 * under the terms of "Eclipse Public License v1.0" |
|
6 * which accompanies this distribution, and is available |
|
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
8 * |
|
9 * Initial Contributors: |
|
10 * Nokia Corporation - initial contribution. |
|
11 * |
|
12 * Contributors: |
|
13 * |
|
14 * Description: This file contains the definition of CSpdiaDialogs class. |
|
15 * |
|
16 */ |
|
17 |
|
18 |
|
19 |
|
20 |
|
21 |
|
22 #ifndef SPEEDDIALPRIVATE_H |
|
23 #define SPEEDDIALPRIVATE_H |
|
24 |
|
25 #include <e32base.h> |
|
26 #include <coecntrl.h> |
|
27 #include <MPbk2ImageOperationObservers.h> |
|
28 #include <MVPbkSingleContactOperationObserver.h> |
|
29 #include <MVPbkContactFindObserver.h> |
|
30 #include <MVPbkContactAttributeManager.h> |
|
31 |
|
32 #include <MVPbkStoreContact.h> |
|
33 #include <AknUtils.h> |
|
34 |
|
35 #include <CPbk2ImageManager.h> |
|
36 #include <MVPbkContactViewObserver.h> |
|
37 |
|
38 #include <AiwCommon.h> |
|
39 #include <AiwContactSelectionDataTypes.h> |
|
40 #include <AiwContactAssignDataTypes.h> |
|
41 |
|
42 #include <MVPbkContactStoreObserver.h> |
|
43 #include <MVPbkContactObserver.h> |
|
44 #include "CVPbkContactManager.h" |
|
45 #include "centralrepository.h" |
|
46 |
|
47 // Forward Declarations |
|
48 class TSpdiaIndexDataVPbk; |
|
49 class CSpdiaGridVPbk; |
|
50 class CAknGrid; |
|
51 class CAknQueryDialog; |
|
52 class CSpdiaGridDlgVPbk; |
|
53 class CVPbkSpeedDialAttribute; |
|
54 class CVPbkContactLinkArray; |
|
55 class TPbk2IconId; |
|
56 class MVPbkContactAttribute; |
|
57 class CAiwServiceHandler; |
|
58 class MRefreshObserver; |
|
59 class TXspIconHelper; |
|
60 |
|
61 const TInt KArraySize =9; |
|
62 //for the timebeing.. |
|
63 #define KErrCancelled 0x99 |
|
64 |
|
65 NONSHARABLE_CLASS( CSpeedDialPrivate ) : public CCoeControl, public MPbk2ImageGetObserver, |
|
66 public MVPbkSingleContactOperationObserver, |
|
67 public MVPbkSetAttributeObserver, |
|
68 public MVPbkContactFindObserver, |
|
69 public MVPbkContactStoreObserver, |
|
70 public MAiwNotifyCallback, |
|
71 public MVPbkContactObserver |
|
72 |
|
73 { |
|
74 public: |
|
75 |
|
76 enum eSpeedDialState |
|
77 { |
|
78 STATE_IDLE = 0, |
|
79 STATE_INITIAL, |
|
80 STATE_CONTACTCHANGE, |
|
81 STATE_ASSIGN, |
|
82 STATE_REMOVE |
|
83 }; |
|
84 |
|
85 // The type of the caller application. |
|
86 enum TGridUse |
|
87 { |
|
88 EGridUse, // SpeedDial |
|
89 EGridUseAndUpdate, // PhoneBook |
|
90 EGridNoUse // PhoneClient |
|
91 }; |
|
92 /** |
|
93 * Creates a new instace of this class. |
|
94 * |
|
95 */ |
|
96 IMPORT_C static CSpeedDialPrivate* NewL(CVPbkContactManager* aContactManager); |
|
97 |
|
98 /** |
|
99 * The number of voice mail returned, if voice mail is assigned. |
|
100 * Note: If the location is empty, required dialog |
|
101 * will be displayed and voice mail will be defined. |
|
102 * |
|
103 * @param aNumber reference of phone number. |
|
104 * @retunr EFalse if user cancel or failed. |
|
105 */ |
|
106 IMPORT_C TBool VoiceMailL(TDes& aNumber); |
|
107 |
|
108 /** |
|
109 * The number of voice mail returned, if voice mail is assigned. |
|
110 * Note: If the location is empty, required dialog |
|
111 * will be displayed and voice mail will be defined. |
|
112 * |
|
113 * @param aNumber reference of phone number. |
|
114 * @retunr EFalse if user cancel or failed. |
|
115 */ |
|
116 IMPORT_C TBool ExVoiceMailL(TDes& aNumber); |
|
117 |
|
118 IMPORT_C TBool ExVideoMailL(TDes& aNumber); |
|
119 /** |
|
120 * The value converted into the index of an array from |
|
121 * the location of speeddial is returned. |
|
122 * |
|
123 * @param aDial a location of speed dial. |
|
124 * @return the index of a speeddial index data, if not found -1 |
|
125 */ |
|
126 IMPORT_C TInt Index(TInt aDial) const; |
|
127 |
|
128 /** |
|
129 * The value converted into the the location of speeddial |
|
130 * from index of an array is returned. |
|
131 * |
|
132 * @param aIndex a index of array. |
|
133 * @return location of speed dial(1-9), if not found -1 |
|
134 */ |
|
135 IMPORT_C TInt Number(TInt aIndex) const; |
|
136 |
|
137 /** |
|
138 * Returns the phone number of a speed dial contact. |
|
139 * Note: left and right spaces are removed. |
|
140 * |
|
141 * @param aIndex a index of array. |
|
142 */ |
|
143 IMPORT_C const TDesC& PhoneNumber(TInt aIndex) const; |
|
144 |
|
145 |
|
146 /** |
|
147 * Returns the thumbnail index of a grid array. |
|
148 * |
|
149 * @param aIndex a index of array. |
|
150 */ |
|
151 IMPORT_C TInt ThumbIndex(TInt aIndex) const; |
|
152 |
|
153 /** |
|
154 * Icons, thumbnails and text array for the grid are created. |
|
155 * Note: If a aIndex parameter is set, only the data of the value |
|
156 * will be set up. |
|
157 * Note: CreateDataL() is used if App to be used is except SD. |
|
158 * |
|
159 * @param aGrid the grid to set up |
|
160 * @param aIndex (TInt) if <-1, All values are set up. |
|
161 */ |
|
162 IMPORT_C TBool CreateGridDataL(CAknGrid* aGrid, TBool aIndex); |
|
163 |
|
164 /** |
|
165 * The position which a shadow draws is set up. |
|
166 * |
|
167 * @param aRect |
|
168 */ |
|
169 IMPORT_C void SetLayout(const TRect& aRect); |
|
170 |
|
171 /** |
|
172 * Returns the position of voice mail box |
|
173 */ |
|
174 IMPORT_C TInt VMBoxPosition() const; |
|
175 IMPORT_C TInt VdoMBoxPosition() const; |
|
176 |
|
177 /** |
|
178 * Returns the icon index of grid array. |
|
179 */ |
|
180 IMPORT_C TInt SpdIconIndex(TInt aIndex) const; |
|
181 |
|
182 /** |
|
183 */ |
|
184 IMPORT_C void DeleteIconArray(); |
|
185 |
|
186 /** |
|
187 */ |
|
188 IMPORT_C void ReloadIconArray(); |
|
189 |
|
190 |
|
191 IMPORT_C CArrayPtr<CGulIcon>* IconArray() const; |
|
192 |
|
193 |
|
194 IMPORT_C TInt VoiceMailType(); |
|
195 |
|
196 /** |
|
197 * Returns last error. |
|
198 */ |
|
199 IMPORT_C TInt GetSpdCtrlLastError(); |
|
200 |
|
201 /** |
|
202 * Draw this control |
|
203 */ |
|
204 void Draw(const TRect& aRect) const; |
|
205 |
|
206 /** |
|
207 * Set size for the skin background context. |
|
208 */ |
|
209 void SizeChanged(); |
|
210 |
|
211 /** |
|
212 * Passes skin information when needed. |
|
213 **/ |
|
214 TTypeUid::Ptr MopSupplyObject(TTypeUid aId); |
|
215 |
|
216 |
|
217 /** |
|
218 * Creates a grid itemArray. |
|
219 * Note: It calls, when using a grid except SDM. |
|
220 * |
|
221 * @param aGrid the grid to set up |
|
222 * @param aUpdate updates in an event. |
|
223 */ |
|
224 TBool CreateDataL(const CAknGrid& aGrid); |
|
225 |
|
226 |
|
227 IMPORT_C void SetUpdateFlag(TBool aFlag); |
|
228 IMPORT_C TBool UpdateFlag(); |
|
229 IMPORT_C void SetState(eSpeedDialState); |
|
230 IMPORT_C eSpeedDialState State(); |
|
231 IMPORT_C TGridUse GridStatus(); |
|
232 IMPORT_C void SetGridStatus(TGridUse aStatus); |
|
233 |
|
234 /** |
|
235 * Returns type of the phone number. |
|
236 */ |
|
237 IMPORT_C TInt NumberType(TInt aIndex) const; |
|
238 |
|
239 |
|
240 IMPORT_C MVPbkStoreContact* Contact(TInt aIndex); |
|
241 |
|
242 IMPORT_C HBufC* ContactTitleL( MVPbkBaseContact* aContact, TBool aUnnamed = ETrue); |
|
243 |
|
244 |
|
245 /** |
|
246 * Thumbnail's shadow is drawn. |
|
247 * |
|
248 * @param aGc window gc |
|
249 */ |
|
250 void DrawShadow(CWindowGc& aGc) const; |
|
251 |
|
252 /** |
|
253 * Internal rutine to check if pop up has to be shown |
|
254 * to enable the One-Key-Dialling setting. |
|
255 * @return bool value of one key calling status on or off. |
|
256 */ |
|
257 IMPORT_C TBool CheckingIfPopUpNeededL( ); |
|
258 |
|
259 /********************************************************* |
|
260 ********** MVPbkContactFindObserver APIs **************** |
|
261 *********************************************************/ |
|
262 |
|
263 void FindCompleteL(MVPbkContactLinkArray* aResults); |
|
264 void FindFailed(TInt aError); |
|
265 |
|
266 |
|
267 /******************************************************** |
|
268 ********** MPbk2ImageGetObserver APIs ******************* |
|
269 *********************************************************/ |
|
270 |
|
271 /** |
|
272 * Called when image loading is completed. |
|
273 * |
|
274 * @param aOperation The completed operation. |
|
275 * @param aBitmap The loaded bitmap. Callee is responsible of |
|
276 * the bitmap. |
|
277 */ |
|
278 void Pbk2ImageGetComplete( |
|
279 MPbk2ImageOperation& aOperation, |
|
280 CFbsBitmap* aBitmap ) ; |
|
281 |
|
282 /** |
|
283 * Called if the image loading fails. |
|
284 * |
|
285 * @param aOperation The failed operation. |
|
286 * @param aError Error code of the failure. |
|
287 */ |
|
288 void Pbk2ImageGetFailed( |
|
289 MPbk2ImageOperation& aOperation, |
|
290 TInt aError ); |
|
291 |
|
292 /********************************************************* |
|
293 ****** MVPbkSetAttributeObserver APIs ******************* |
|
294 *********************************************************/ |
|
295 |
|
296 /** |
|
297 * Attribute operation completed. |
|
298 * @param aOperation Contact operation that was completed. |
|
299 */ |
|
300 void AttributeOperationComplete( |
|
301 MVPbkContactOperationBase& aOperation) ; |
|
302 |
|
303 /** |
|
304 * Attribute operation failed. |
|
305 * @param aOperation Contact operation that failed. |
|
306 * @param aError Error code. |
|
307 */ |
|
308 void AttributeOperationFailed( |
|
309 MVPbkContactOperationBase& aOperation, TInt aError) ; |
|
310 |
|
311 /********************************************************* |
|
312 ****** MVPbkSingleContactOperationObserver APIs ********** |
|
313 **********************************************************/ |
|
314 |
|
315 /* Called when operation is completed. |
|
316 * |
|
317 * @param aOperation the completed operation. |
|
318 * @param aContact the contact returned by the operation. |
|
319 * Client must take the ownership immediately. |
|
320 * |
|
321 * !!! NOTICE !!! |
|
322 * If you use Cleanupstack for MVPbkStoreContact |
|
323 * Use MVPbkStoreContact::PushL or |
|
324 * CleanupDeletePushL from e32base.h. |
|
325 * (Do Not Use CleanupStack::PushL(TAny*) because |
|
326 * then the virtual destructor of the M-class |
|
327 * won't be called when the object is deleted). |
|
328 */ |
|
329 void VPbkSingleContactOperationComplete( |
|
330 MVPbkContactOperationBase& aOperation, |
|
331 MVPbkStoreContact* aContact); |
|
332 |
|
333 /** |
|
334 * Called if the operation fails. |
|
335 * |
|
336 * @param aOperation the failed operation. |
|
337 * @param aError error code of the failure. |
|
338 */ |
|
339 void VPbkSingleContactOperationFailed( |
|
340 MVPbkContactOperationBase& aOperation, |
|
341 TInt aError); |
|
342 |
|
343 /********************************************************** |
|
344 **************** MAiwNotifyCallback APIs****************** |
|
345 **********************************************************/ |
|
346 TInt HandleNotifyL( |
|
347 TInt aCmdId, |
|
348 TInt aEventId, |
|
349 CAiwGenericParamList& aEventParamList, |
|
350 const CAiwGenericParamList& aInParamList); |
|
351 |
|
352 /********************************************************** |
|
353 **************** MAiwNotifyCallback APIs****************** |
|
354 **********************************************************/ |
|
355 void StoreReady(MVPbkContactStore& aContactStore); |
|
356 void StoreUnavailable(MVPbkContactStore& aContactStore, TInt aReason); |
|
357 void HandleStoreEventL( |
|
358 MVPbkContactStore& aContactStore, |
|
359 TVPbkContactStoreEvent aStoreEvent); |
|
360 |
|
361 /********************************************************** |
|
362 **************** MVPbkContactObserver APIs**************** |
|
363 **********************************************************/ |
|
364 void ContactOperationCompleted(TContactOpResult aResult); |
|
365 void ContactOperationFailed(TContactOp aOpCode, TInt aErrorCode, |
|
366 TBool aErrorNotified); |
|
367 /********************************************************** |
|
368 ********************* Public APIs************************* |
|
369 **********************************************************/ |
|
370 |
|
371 /** |
|
372 * Shows a selection grid dialog for assigning a speed dial. |
|
373 * After selecting the index from the grid, speed dial will be set for |
|
374 * the given contact. |
|
375 * |
|
376 * @param aContactLink Contact link pointing to contact and field. |
|
377 * @param aIndex On return contains the index where speed dial was assigned to. |
|
378 * @return ETrue if all dialgs were accepted. |
|
379 */ |
|
380 IMPORT_C TInt ShowAssign( MVPbkContactLink& aContactLink, TInt& aIndex ); |
|
381 /** |
|
382 * Shows necessary dialog(s) to assign a contact to the given speed dial |
|
383 * index. After accepting the dialogs and selecting the contact, speed dial |
|
384 * will be set to the given index. |
|
385 * |
|
386 * @param aIndex Speed dial index. |
|
387 * @param aContactLink On return contains the contact, for which the speed dial was assigned to. |
|
388 * @return ETrue if all dialgs were accepted. |
|
389 */ |
|
390 IMPORT_C TInt ShowAssign( TInt aIndex, MVPbkContactLink*& aContactLink ); |
|
391 |
|
392 /** |
|
393 * Shows necessary dialog(s) to remove a speed dial from the given index. |
|
394 * After accepting the dialog(s), speed dial will be removed from the index. |
|
395 * |
|
396 * @param aIndex Index of the speed dial to be removed. |
|
397 * @return ETrue if all dialgos were accepted. |
|
398 */ |
|
399 IMPORT_C TInt ShowRemove( TInt aIndex ); |
|
400 |
|
401 /** |
|
402 * Method is used to notify the cancel event |
|
403 * |
|
404 * @return KErrNone if Cancel is successful. |
|
405 */ |
|
406 IMPORT_C TBool Cancel(); |
|
407 /** |
|
408 * D'tor |
|
409 * |
|
410 */ |
|
411 |
|
412 IMPORT_C ~CSpeedDialPrivate(); |
|
413 /** |
|
414 * Retirves the Email Field attribute value |
|
415 * |
|
416 */ |
|
417 |
|
418 IMPORT_C HBufC* EMail(MVPbkStoreContact* aContact); |
|
419 /** |
|
420 * GetWait,monitors the Asynchronous behaviour upon client side |
|
421 * |
|
422 */ |
|
423 |
|
424 IMPORT_C CActiveSchedulerWait* GetWait(); |
|
425 |
|
426 /** |
|
427 * Set the refresh observer. |
|
428 * @param aObserver the observer for refreshment. |
|
429 */ |
|
430 IMPORT_C void SetRefreshObserver( MRefreshObserver* aObserver ); |
|
431 |
|
432 /** |
|
433 * Set Current Grid Index |
|
434 * @param aCurrentGridIndex the current grid index. |
|
435 */ |
|
436 IMPORT_C void SetCurrentGridIndex( TInt aCurrentGridIndex ); |
|
437 |
|
438 /** |
|
439 * Set Current iGrid and iIconArray as Null |
|
440 */ |
|
441 IMPORT_C void SetGridDataAsNull(); |
|
442 private: |
|
443 |
|
444 /** |
|
445 * Index data are initialized. |
|
446 */ |
|
447 void InitIndexDataL(); |
|
448 |
|
449 /** |
|
450 * Creates Item's descriptor for Grid. |
|
451 * |
|
452 * @param aSdmData reference to the data currently used. |
|
453 * @returen a buffer containing the descriptor text. |
|
454 */ |
|
455 HBufC* CreateItemDescriptorLC(const TSpdiaIndexDataVPbk& aSdmData); |
|
456 |
|
457 |
|
458 /** |
|
459 * A descriptor is added to a text. |
|
460 * |
|
461 * @param aSdmData reference to the data currently used. |
|
462 * @param aText the text for storing |
|
463 */ |
|
464 void AppendTextL(const TSpdiaIndexDataVPbk& aSdmData, TPtr& aText); |
|
465 |
|
466 |
|
467 |
|
468 /** |
|
469 * Operations to a CPbk2ImageManager are set. |
|
470 * Note: call GetImageAsyncL(). |
|
471 */ |
|
472 void SetOperationsL(); |
|
473 |
|
474 /** |
|
475 * Updates data set to match index of the owned index data array. |
|
476 */ |
|
477 TBool UpdateIndexDataL(TInt aIndex); |
|
478 |
|
479 /** |
|
480 * Creates icon data for SDM control data by the data of parameters. |
|
481 * |
|
482 * @param aIndex a index of array. |
|
483 * @param aSdmData reference to the data currently used. |
|
484 * @param aSetUpdateThumb thumbnail load start parameter set in index data |
|
485 */ |
|
486 TBool CreateIndexIconL(TInt aIndex, TSpdiaIndexDataVPbk& aSdmData, |
|
487 TBool aSetUpdateThumb); |
|
488 |
|
489 /** |
|
490 * The position on the array that a grid uses from |
|
491 * an item and a phone number is returned. |
|
492 * |
|
493 * @param aItem contacd item |
|
494 * @param aDial phone number |
|
495 */ |
|
496 //TInt IconPositionL( TInt aDial, TInt& aFieldId); |
|
497 |
|
498 /** |
|
499 * Speeddial index data is changed by the data of parameters. |
|
500 * |
|
501 * @param aIndex a index of array. |
|
502 * @param aSdmData reference to the data currently used. |
|
503 */ |
|
504 void ChangeIndexDataL(TInt aIndex, const TSpdiaIndexDataVPbk& aSdmData); |
|
505 |
|
506 /** |
|
507 * Searches icon of grid array for a match. |
|
508 * |
|
509 * @param aId phone book icon id to match to. |
|
510 * @return the matching index, -1 if not found. |
|
511 */ |
|
512 |
|
513 TInt FindIconIndex( TInt aId, MVPbkStoreContactField* aField ); |
|
514 |
|
515 |
|
516 /** |
|
517 * Gets Item's descriptor for Grid. |
|
518 * |
|
519 * @param aIndex a index of array. |
|
520 * @param aSdmData reference to the data currently used. |
|
521 * @return a buffer containing the descriptor text. |
|
522 */ |
|
523 HBufC* ItemDescriptorLC(TInt aIndex, const TSpdiaIndexDataVPbk& aSdmData); |
|
524 |
|
525 /** |
|
526 * The data of items are added to an array. |
|
527 * |
|
528 * @param aArray |
|
529 */ |
|
530 void SetItemDataL(CDesCArray& aArray); |
|
531 |
|
532 /** |
|
533 * Show note when the contact is in using. |
|
534 * |
|
535 * @param aResourceId reaource id of the string to prompt. |
|
536 */ |
|
537 void ShowNoteL( TInt aResourceId ); |
|
538 |
|
539 /** |
|
540 * From MContactDbObserver, Handles an event of type aEventType. |
|
541 */ |
|
542 // void HandleDatabaseEventL(TContactDbObserverEvent aEvent); |
|
543 |
|
544 /********************************************************* |
|
545 * Thumb operations * |
|
546 **********************************************************/ |
|
547 |
|
548 /** |
|
549 * Gets actual size of thumbnial to be drawn. |
|
550 * @return size of thumbnail. |
|
551 */ |
|
552 |
|
553 TSize GetThumbnailSize(); |
|
554 /** |
|
555 * Returns the thumbnail type. |
|
556 * |
|
557 * @param aIndex a index of array. |
|
558 */ |
|
559 TInt ThumbType(TInt aIndex) const; |
|
560 |
|
561 /** |
|
562 * Returns the thumbnail size. |
|
563 * |
|
564 * @param aIndex a index of array. |
|
565 */ |
|
566 TSize ThumbSize(TInt aIndex) const; |
|
567 |
|
568 /** |
|
569 * Returns the type from a size of thumbnail. |
|
570 * |
|
571 * @param aSize a thumbnail size |
|
572 */ |
|
573 TInt ConvThumbType(const TSize& aSize) const; |
|
574 |
|
575 /** |
|
576 * The descriptor for thumbnail is added. |
|
577 * |
|
578 * @param aSdmData reference to the data currently used. |
|
579 * @param aText |
|
580 * @param aFixedLocation |
|
581 */ |
|
582 void AppendThumbnail(const TSpdiaIndexDataVPbk& aSdmData, |
|
583 TPtr& aText, |
|
584 TBool aFixedLocation); |
|
585 |
|
586 |
|
587 /********************************************************* |
|
588 * Construction * |
|
589 **********************************************************/ |
|
590 CSpeedDialPrivate(CVPbkContactManager* aContactManager); |
|
591 void ConstructL(); |
|
592 |
|
593 /** |
|
594 * A text array that a grid has is erased. |
|
595 */ |
|
596 void ResetArray(); |
|
597 |
|
598 /** |
|
599 * Speeddial index data is set by the data of parameters. |
|
600 * |
|
601 * @param aIndex a index of array. |
|
602 * @param aSdmData reference to the data currently used. |
|
603 */ |
|
604 void SetIndexDataL(TInt aIndex, TSpdiaIndexDataVPbk& aSdmData); |
|
605 |
|
606 TInt HasImageOperation(MPbk2ImageOperation& aOperation); |
|
607 |
|
608 TInt HasOperation(MVPbkContactOperationBase* aContactOpertion); |
|
609 |
|
610 TBool CheckSpaceBelowCriticalLevelL(); |
|
611 |
|
612 void ExecuteSingleEntryFetchL(TInt aIndex, |
|
613 TAiwSingleEntrySelectionDataV2 aData, |
|
614 const TDesC& aUri1 = KNullDesC ); |
|
615 |
|
616 void ExecuteSingleEntryAssignL(TInt aIndex, |
|
617 AiwContactAssign::TAiwContactAttributeAssignDataV1 aData); |
|
618 |
|
619 TInt SetIconArrayL(CArrayPtrFlat<CGulIcon>* aArray); |
|
620 TInt CreateIndexIconsL( CArrayPtrFlat<CGulIcon>* aArray ); |
|
621 void InitializeArray(); |
|
622 void CreateFieldIconsL(CArrayPtrFlat<CGulIcon>* aArray); |
|
623 |
|
624 TBool AssignSpeedDialL(TInt aIndex); |
|
625 TBool RemoveSpeedDialL(TInt aIndex); |
|
626 |
|
627 void SetSpeedDialIndexL(MVPbkStoreContact* aContact); |
|
628 void Wait(); |
|
629 void WaitFetchMail(); |
|
630 void Release(); |
|
631 void ReleaseFetchMail(); |
|
632 |
|
633 void SetDetails(TInt aIndex); |
|
634 |
|
635 // Change to TInt from TBool for more value |
|
636 TInt FindInSpeedDialContacts(MVPbkContactLink* aContactLink); |
|
637 // TBool FindInSpeedDialContacts(MVPbkContactLink* aContactLink); |
|
638 |
|
639 TBool CheckContactAssignedFromPhoneBookL(MVPbkContactLink* aContactLink); |
|
640 |
|
641 TBool ShowAssignL( MVPbkContactLink& aContactLink, TInt& aIndex ); |
|
642 TBool ShowAssignL( TInt aIndex, MVPbkContactLink*& aContactLink ); |
|
643 TBool ShowRemoveL( TInt aIndex ); |
|
644 |
|
645 void InitBmpArray(); |
|
646 |
|
647 private: |
|
648 void Pbk2ImageGetCompleteL( |
|
649 MPbk2ImageOperation& aOperation, |
|
650 CFbsBitmap* aBitmap ) ; |
|
651 |
|
652 void ReplaceNonGraphicCharacters(TDes& aText, TText aChar); |
|
653 |
|
654 private: |
|
655 |
|
656 TGridUse iGridUsed; |
|
657 CArrayPtrFlat<CGulIcon>* iIconArray; |
|
658 TAknLayoutRect icellLayout[KArraySize]; |
|
659 CArrayFixFlat<TAknLayoutRect>* iShadowLayout; // owned by this |
|
660 CAknsBasicBackgroundControlContext* iBgContext; |
|
661 |
|
662 TInt iCurrentIndex; |
|
663 TInt iType; |
|
664 TInt iError; |
|
665 TInt iSdmCount; // Grid cell count(Row * col) |
|
666 TBool iSaveDlg; |
|
667 TBool iPopupDialog; |
|
668 CAknQueryDialog* iSaveChangesDialog; |
|
669 CSpdiaGridDlgVPbk* iGridDlg; |
|
670 TBuf<254> iBmpPath; |
|
671 TBool iBooleanVarForAddingDialogVariation; |
|
672 TInt iFileOffset; |
|
673 |
|
674 RArray<TAknsItemID>*iDialSkinBmp; |
|
675 RArray<TAknsItemID>*iSkinIcons; |
|
676 |
|
677 /* Member variables added for migration */ |
|
678 CVPbkContactManager* iContactManager; |
|
679 MVPbkContactAttributeManager* iAttributeManager; |
|
680 CPbk2ImageManager* iImageManager; |
|
681 |
|
682 const MVPbkContactLink* iContactLink; |
|
683 MVPbkStoreContact *iContact; |
|
684 MVPbkContactLinkArray* iContactLinkArray; |
|
685 const MVPbkFieldType* iThumbNailFieldType; |
|
686 |
|
687 CVPbkSpeedDialAttribute* iSpeedDial; |
|
688 |
|
689 eSpeedDialState iState; |
|
690 |
|
691 TBool iRetrieveComplete; |
|
692 TBool iOperationComplete; |
|
693 TBool iFetchmailComplete; |
|
694 TBool iFetchAll; |
|
695 TBool iUpdateFlag; |
|
696 TBool iFetchmail; |
|
697 |
|
698 CAknGrid* iGrid; |
|
699 CArrayFixFlat<TSpdiaIndexDataVPbk>* iSdmArray; // owned by this |
|
700 CPbk2ImageManager* aImageManager; |
|
701 CActiveSchedulerWait *iWait; |
|
702 CActiveSchedulerWait *iWaitFetchmail; |
|
703 CAknQueryDialog* iQueryDialog; |
|
704 CRepository* ivmbxvariation; |
|
705 CRepository* ivmbxkey2; |
|
706 TInt iVmbxkeypos; |
|
707 TInt iVmbxsupported; |
|
708 TBool iShowAssignCalled; |
|
709 |
|
710 TUint iDialBmp[9]; |
|
711 TUint iDialBmpMask[9]; |
|
712 TUint iDialHindiBmp[9]; |
|
713 TUint iDialHindiBmpMask[9]; |
|
714 HBufC* iMail; |
|
715 TInt iVideoMail; |
|
716 CAiwServiceHandler* iServiceHandler; |
|
717 |
|
718 MRefreshObserver* iRefreshObserver; |
|
719 TBool iCancelFlag; |
|
720 |
|
721 CAknQueryDialog* iRemoveConfirmQueryDialog; |
|
722 |
|
723 RArray<TXspIconHelper> ixspIconInfoArray; |
|
724 |
|
725 }; |
|
726 |
|
727 |
|
728 #endif //SPEEDDIALPRIVATE_H |