phonebookui/Phonebook2/inc/CPbk2MergePhotoConflictDlg.h
branchRCL_3
changeset 3 04ab22b956c2
parent 0 e686773b3f54
child 64 c1e8ba0c2b16
--- a/phonebookui/Phonebook2/inc/CPbk2MergePhotoConflictDlg.h	Tue Feb 02 10:12:17 2010 +0200
+++ b/phonebookui/Phonebook2/inc/CPbk2MergePhotoConflictDlg.h	Fri Feb 19 22:40:27 2010 +0200
@@ -24,17 +24,23 @@
 #include <e32base.h>
 #include <AknDialog.h>
 #include <eiklbo.h>
+#include <MPbk2ImageOperationObservers.h>
 
 // CLASS DECLARATION
 class CEikFormattedCellListBox;
 class CAknNavigationDecorator;
 class CFbsBitmap;
+class CPbk2ImageManager;
+class MPbk2ImageOperation;
+class MVPbkBaseContact;
+class CVPbkContactManager;
 
 /**
  *  CPbk2MergePhotoConflictDlg
  * 
  */
 NONSHARABLE_CLASS( CPbk2MergePhotoConflictDlg ) : public CAknDialog,
+                                                  private MPbk2ImageGetObserver,
                                                   private MEikListBoxObserver
     {
 public: // construction
@@ -42,8 +48,8 @@
     /**
      * Two-phased constructor.
      */
-    IMPORT_C static CPbk2MergePhotoConflictDlg* NewL( CFbsBitmap* aFirstImage,
-                                                      CFbsBitmap* aSecondImage, 
+    IMPORT_C static CPbk2MergePhotoConflictDlg* NewL( MVPbkBaseContact* aFirstContact,
+                                                      MVPbkBaseContact* aSecondContact, 
                                                       TInt* aResult );
     
     /**
@@ -56,8 +62,8 @@
     /**
      * Constructor for performing 1st stage construction
      */
-    CPbk2MergePhotoConflictDlg( CFbsBitmap* aFirstImage,
-                                CFbsBitmap* aSecondImage, 
+    CPbk2MergePhotoConflictDlg( MVPbkBaseContact* aFirstContact,
+                                MVPbkBaseContact* aSecondContact, 
                                 TInt* aResult );
     /**
      * Default constructor for performing 2nd stage construction
@@ -76,6 +82,17 @@
 
     TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType );
     
+    void SizeChanged();
+
+private: //functions from MPbk2ImageGetObserver
+    void Pbk2ImageGetComplete(
+                    MPbk2ImageOperation& aOperation,
+                    CFbsBitmap* aBitmap );
+    
+    void Pbk2ImageGetFailed(
+                    MPbk2ImageOperation& aOperation,
+                    TInt aError );
+    
 private: // new methods
     
     void SetIconsL();
@@ -88,6 +105,12 @@
     
     void SetTitlePaneL( TBool aCustom );
     
+    void InitBitmapAsyncL( MVPbkBaseContact& aContact );
+    
+    void StopWait();
+    
+    void StartWait();
+    
 private: // new methods
     
     /// Not own: Pointer for list control
@@ -102,6 +125,26 @@
     TInt* iSelectedItem;
     /// Own: Selection indicator string
     HBufC* iSelectedString;
+    /// Not own: contact to be merged
+    MVPbkBaseContact* iFirstContact;
+    /// not own: contact to be merged
+    MVPbkBaseContact* iSecondContact;
+    /// Not own: contact manager
+    CVPbkContactManager* iContactManager;
+    /// own: image manager
+    CPbk2ImageManager* iImageManager;
+    /// Own. Image operation for first contact
+    MPbk2ImageOperation* iImageOperationFirst;
+    
+    /// Own. Image operation for first contact
+    MPbk2ImageOperation* iImageOperationSecond;
+    
+    /// Own. size of image to be shown in photo conflict dialog
+    TSize iSize;
+    
+    /// Own: Active scheduler waiter
+    CActiveSchedulerWait* iWait;
+   
     };
 
 #endif // CPBK2MERGEPHOTOCONFLICTDLG_H