phonebookui/Phonebook2/inc/CPbk2MergePhotoConflictDlg.h
branchRCL_3
changeset 3 04ab22b956c2
parent 0 e686773b3f54
child 64 c1e8ba0c2b16
equal deleted inserted replaced
0:e686773b3f54 3:04ab22b956c2
    22 // INCLUDES
    22 // INCLUDES
    23 #include <e32std.h>
    23 #include <e32std.h>
    24 #include <e32base.h>
    24 #include <e32base.h>
    25 #include <AknDialog.h>
    25 #include <AknDialog.h>
    26 #include <eiklbo.h>
    26 #include <eiklbo.h>
       
    27 #include <MPbk2ImageOperationObservers.h>
    27 
    28 
    28 // CLASS DECLARATION
    29 // CLASS DECLARATION
    29 class CEikFormattedCellListBox;
    30 class CEikFormattedCellListBox;
    30 class CAknNavigationDecorator;
    31 class CAknNavigationDecorator;
    31 class CFbsBitmap;
    32 class CFbsBitmap;
       
    33 class CPbk2ImageManager;
       
    34 class MPbk2ImageOperation;
       
    35 class MVPbkBaseContact;
       
    36 class CVPbkContactManager;
    32 
    37 
    33 /**
    38 /**
    34  *  CPbk2MergePhotoConflictDlg
    39  *  CPbk2MergePhotoConflictDlg
    35  * 
    40  * 
    36  */
    41  */
    37 NONSHARABLE_CLASS( CPbk2MergePhotoConflictDlg ) : public CAknDialog,
    42 NONSHARABLE_CLASS( CPbk2MergePhotoConflictDlg ) : public CAknDialog,
       
    43                                                   private MPbk2ImageGetObserver,
    38                                                   private MEikListBoxObserver
    44                                                   private MEikListBoxObserver
    39     {
    45     {
    40 public: // construction
    46 public: // construction
    41     
    47     
    42     /**
    48     /**
    43      * Two-phased constructor.
    49      * Two-phased constructor.
    44      */
    50      */
    45     IMPORT_C static CPbk2MergePhotoConflictDlg* NewL( CFbsBitmap* aFirstImage,
    51     IMPORT_C static CPbk2MergePhotoConflictDlg* NewL( MVPbkBaseContact* aFirstContact,
    46                                                       CFbsBitmap* aSecondImage, 
    52                                                       MVPbkBaseContact* aSecondContact, 
    47                                                       TInt* aResult );
    53                                                       TInt* aResult );
    48     
    54     
    49     /**
    55     /**
    50      * Destructor.
    56      * Destructor.
    51      */
    57      */
    54 private: // construction
    60 private: // construction
    55     
    61     
    56     /**
    62     /**
    57      * Constructor for performing 1st stage construction
    63      * Constructor for performing 1st stage construction
    58      */
    64      */
    59     CPbk2MergePhotoConflictDlg( CFbsBitmap* aFirstImage,
    65     CPbk2MergePhotoConflictDlg( MVPbkBaseContact* aFirstContact,
    60                                 CFbsBitmap* aSecondImage, 
    66                                 MVPbkBaseContact* aSecondContact, 
    61                                 TInt* aResult );
    67                                 TInt* aResult );
    62     /**
    68     /**
    63      * Default constructor for performing 2nd stage construction
    69      * Default constructor for performing 2nd stage construction
    64      */
    70      */
    65     void ConstructL();
    71     void ConstructL();
    74 
    80 
    75     TBool OkToExitL( TInt aButtonId );
    81     TBool OkToExitL( TInt aButtonId );
    76 
    82 
    77     TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType );
    83     TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType );
    78     
    84     
       
    85     void SizeChanged();
       
    86 
       
    87 private: //functions from MPbk2ImageGetObserver
       
    88     void Pbk2ImageGetComplete(
       
    89                     MPbk2ImageOperation& aOperation,
       
    90                     CFbsBitmap* aBitmap );
       
    91     
       
    92     void Pbk2ImageGetFailed(
       
    93                     MPbk2ImageOperation& aOperation,
       
    94                     TInt aError );
       
    95     
    79 private: // new methods
    96 private: // new methods
    80     
    97     
    81     void SetIconsL();
    98     void SetIconsL();
    82 
    99 
    83     void SetItemsL();
   100     void SetItemsL();
    85     void SwitchRadioButtonL();
   102     void SwitchRadioButtonL();
    86     
   103     
    87     void SetNaviPaneL();
   104     void SetNaviPaneL();
    88     
   105     
    89     void SetTitlePaneL( TBool aCustom );
   106     void SetTitlePaneL( TBool aCustom );
       
   107     
       
   108     void InitBitmapAsyncL( MVPbkBaseContact& aContact );
       
   109     
       
   110     void StopWait();
       
   111     
       
   112     void StartWait();
    90     
   113     
    91 private: // new methods
   114 private: // new methods
    92     
   115     
    93     /// Not own: Pointer for list control
   116     /// Not own: Pointer for list control
    94     CEikFormattedCellListBox* iListBox;
   117     CEikFormattedCellListBox* iListBox;
   100     CFbsBitmap* iSecondImage;
   123     CFbsBitmap* iSecondImage;
   101     /// Not own: index of selected image
   124     /// Not own: index of selected image
   102     TInt* iSelectedItem;
   125     TInt* iSelectedItem;
   103     /// Own: Selection indicator string
   126     /// Own: Selection indicator string
   104     HBufC* iSelectedString;
   127     HBufC* iSelectedString;
       
   128     /// Not own: contact to be merged
       
   129     MVPbkBaseContact* iFirstContact;
       
   130     /// not own: contact to be merged
       
   131     MVPbkBaseContact* iSecondContact;
       
   132     /// Not own: contact manager
       
   133     CVPbkContactManager* iContactManager;
       
   134     /// own: image manager
       
   135     CPbk2ImageManager* iImageManager;
       
   136     /// Own. Image operation for first contact
       
   137     MPbk2ImageOperation* iImageOperationFirst;
       
   138     
       
   139     /// Own. Image operation for first contact
       
   140     MPbk2ImageOperation* iImageOperationSecond;
       
   141     
       
   142     /// Own. size of image to be shown in photo conflict dialog
       
   143     TSize iSize;
       
   144     
       
   145     /// Own: Active scheduler waiter
       
   146     CActiveSchedulerWait* iWait;
       
   147    
   105     };
   148     };
   106 
   149 
   107 #endif // CPBK2MERGEPHOTOCONFLICTDLG_H
   150 #endif // CPBK2MERGEPHOTOCONFLICTDLG_H