phonebookui/Phonebook/View/inc/MPbkFetchDlgPage.h
changeset 0 e686773b3f54
equal deleted inserted replaced
-1:000000000000 0:e686773b3f54
       
     1 /*
       
     2 * Copyright (c) 2002 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: 
       
    15 *     Fetch dialog page interfaces for Phonebook.
       
    16 *
       
    17 */
       
    18 
       
    19 
       
    20 #ifndef __MPbkFetchDlgPage_H__
       
    21 #define __MPbkFetchDlgPage_H__
       
    22 
       
    23 //  INCLUDES
       
    24 #include <e32std.h>
       
    25 #include <cntdef.h>     // TContactItemId
       
    26 
       
    27 //  FORWARD DECLARATIONS
       
    28 class MPbkFetchDlg;
       
    29 class MPbkFetchDlgSelection;
       
    30 class CPbkContactViewListControl;
       
    31 
       
    32 // CLASS DECLARATION
       
    33 
       
    34 /**
       
    35  * Phonebook fetch dialog page interface.
       
    36  */
       
    37 class MPbkFetchDlgPage
       
    38     {
       
    39     public:  // Interface
       
    40         /**
       
    41          * Destructor
       
    42          */
       
    43         virtual ~MPbkFetchDlgPage()
       
    44 			{
       
    45 			}
       
    46 
       
    47         /**
       
    48          * Returns ETrue if the page initialisation is complete and the page
       
    49          * can be used.
       
    50          */
       
    51         virtual TBool DlgPageReady() const = 0;
       
    52 
       
    53         /**
       
    54          * Returns this page's id.
       
    55          */
       
    56         virtual TInt FetchDlgPageId() const = 0;
       
    57 
       
    58         /**
       
    59          * Activates this dialog page.
       
    60          */
       
    61         virtual void ActivateFetchDlgPageL() = 0;
       
    62 
       
    63         /**
       
    64          * Deactivates this dialog page.
       
    65          */
       
    66         virtual void DeactivateFetchDlgPage() = 0;
       
    67 
       
    68         /**
       
    69          * Returns the currently focused contact on this page.
       
    70          */
       
    71         virtual TContactItemId FocusedContactIdL() const = 0;
       
    72 
       
    73         /**
       
    74          * Returns ETrue if this fetch dialog page is empty
       
    75          */
       
    76         virtual TBool IsFetchDlgPageEmpty() const = 0;
       
    77         
       
    78         /**
       
    79          * Sets contact item -selection accepter
       
    80          * @param aAccepter The accepter
       
    81          */
       
    82        	virtual void SetMPbkFetchDlgSelection
       
    83        					(MPbkFetchDlgSelection* aAccepter) = 0;
       
    84        					
       
    85         /**
       
    86          * Returns ETrue if there are no selected items in this page
       
    87          */      					
       
    88        	virtual TBool ItemsMarked() const = 0;
       
    89        	
       
    90         /**
       
    91          * Sets proper layout for the controls of this dialog page.
       
    92          */
       
    93         virtual void LayoutContents() = 0;
       
    94                 
       
    95          /**
       
    96          * Returns an array of currently marked items.
       
    97 		 * If no items marked the array contains the focused item only.
       
    98          */
       
    99         virtual const CContactIdArray& MarkedItemsL() const =0;     
       
   100        
       
   101          /**
       
   102          * Processes Mark and Unmark commands
       
   103          * @param aCommandId Softkey mark command
       
   104          */
       
   105          virtual TBool ProcessSoftkeyMarkCommandL(TInt aCommandId) = 0;
       
   106          
       
   107          /**
       
   108          * Returns the corresponding list control of this dlg page
       
   109          * @return list control
       
   110          */
       
   111          virtual CPbkContactViewListControl& Control() = 0;
       
   112     };
       
   113 
       
   114 
       
   115 /**
       
   116  * A collection of MPbkFetchDlgPage objects.
       
   117  */
       
   118 class MPbkFetchDlgPages
       
   119     {
       
   120     public:  // Interface
       
   121         /**
       
   122          * Destructor
       
   123          */
       
   124         virtual ~MPbkFetchDlgPages() { }
       
   125 
       
   126         /**
       
   127          * Returns the number of dialog page objects in the collection.
       
   128          */
       
   129         virtual TInt DlgPageCount() const = 0;
       
   130 
       
   131         /**
       
   132          * Returns the aIndexth dialog page in this collection.
       
   133          */
       
   134         virtual MPbkFetchDlgPage& DlgPageAt(TInt aIndex) const = 0;
       
   135 
       
   136         /**
       
   137          * Returns a page with page id aPageId, NULL if not found.
       
   138          */
       
   139         virtual MPbkFetchDlgPage* DlgPageWithId(TInt aPageId) const = 0;
       
   140     };
       
   141 
       
   142 #endif // __MPbkFetchDlgPage_H__
       
   143       
       
   144 // End of File