textinput/peninputcommonctrls/inc/peninputdropdownlist/peninputlistmultirowwithouticon.h
changeset 27 694fa80c203c
parent 24 fc42a86c98e3
child 35 0f326f2e628e
equal deleted inserted replaced
24:fc42a86c98e3 27:694fa80c203c
     1 /*
       
     2 * Copyright (c) 2002-2005 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:  Multi rows list without icon for drop-down list objects
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 #ifndef C_LISTMULTIROWWITHOUTICON_H
       
    20 #define C_LISTMULTIROWWITHOUTICON_H
       
    21 
       
    22 /**
       
    23  *  Multi rows list without icon for drop-down list
       
    24  *
       
    25  *  @lib FepCtrlDropdownList.lib
       
    26  *  @since S60 v3.2
       
    27  */  
       
    28 NONSHARABLE_CLASS(CListMultiRowWithoutIcon) : public CList
       
    29     {
       
    30     	
       
    31 public: // Methods
       
    32 
       
    33     /**
       
    34      * Create a object of CListMultiRowWithoutIcon, static method
       
    35      *
       
    36      * @since S60 v3.2
       
    37      * @param aManager Pointer to the list manager
       
    38      * @param iOwner The drop down list
       
    39      * @return The CListMultiRowWithoutIcon pointer.
       
    40      */
       
    41     static CListMultiRowWithoutIcon* NewL(CListManager* aManager, 
       
    42                                        MFepCtrlDropdownListContext* iOwner);
       
    43     
       
    44     /**
       
    45      * Destructor
       
    46      *
       
    47      * @since S60 v3.2
       
    48      */    
       
    49     virtual ~CListMultiRowWithoutIcon();
       
    50 
       
    51 // from base class CList
       
    52     
       
    53      /**
       
    54      * Draw the list
       
    55      *
       
    56      * @since S60 v3.2
       
    57      */  
       
    58     virtual void Draw();
       
    59 
       
    60     /**
       
    61      * Update the list, including re-calculate the rect of candidates.
       
    62      *
       
    63      * @since S60 v3.2
       
    64      * @param aRecalculate Re-calculate or not calculate 
       
    65 	 *		  the rect of candidates, the default is re-calculate
       
    66      */
       
    67     virtual void UpdateListL(TBool aDrawFlag = ETrue, TBool aRecalculate = ETrue);
       
    68 
       
    69     /**
       
    70      * Deal with the pointer up event.
       
    71      *
       
    72      * @since S60 v3.2
       
    73      * @param aPoint The point of the mouse
       
    74      * @return None.     
       
    75      */  
       
    76     virtual void HandlePointerUpL(const TPoint& aPoint);
       
    77 
       
    78     /**
       
    79      * Deal with the pointer drag event.
       
    80      *
       
    81      * @since S60 v3.2
       
    82      * @param aPoint The point of the mouse
       
    83      * @return None.
       
    84      */ 
       
    85     virtual void HandlePointerDragL(const TPoint& aPoint);
       
    86     
       
    87 protected: // Methods
       
    88 
       
    89     /**
       
    90      * Constructor.
       
    91      *
       
    92      * @since S60 v3.2
       
    93      * @param aManager The list manager
       
    94      * @param aOwner The context of the drop down list     
       
    95      */  
       
    96     CListMultiRowWithoutIcon( CListManager* aManager, 
       
    97 							  MFepCtrlDropdownListContext* aOwner);
       
    98     
       
    99 private: //Methods
       
   100 
       
   101     /**
       
   102      * Calculate the position of current visible candidates.
       
   103      *
       
   104      * @since S60 v3.2
       
   105      * @return the last candidate visible.
       
   106      */  
       
   107     virtual TInt CalculatePositionsL();
       
   108 
       
   109     /**
       
   110      * Calculate all kinds of rectangles of list.
       
   111      *
       
   112      * @since S60 v3.2
       
   113      */  
       
   114     virtual void CalculateAreas();
       
   115 
       
   116     };
       
   117 
       
   118 #endif // C_LISTMULTIROWWITHOUTICON_H
       
   119 
       
   120 // End Of File