classicui_pub/lists_api/inc/EIKLBO.H
changeset 0 2f259fa3e83a
child 21 978afdc0236f
equal deleted inserted replaced
-1:000000000000 0:2f259fa3e83a
       
     1 /*
       
     2 * Copyright (c) 1997-2009 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 *
       
    16 */
       
    17 
       
    18 
       
    19 #if !defined(__EIKLBO_H__)
       
    20 #define __EIKLBO_H__
       
    21 
       
    22 class CEikListBox; 
       
    23 
       
    24 /**
       
    25 * List box observer interface.
       
    26 *
       
    27 * Each list box observer may be registered with a number of list
       
    28 * boxes; each of these send events to the list box observer through
       
    29 * its HandeListBoxEventL() method.
       
    30 *
       
    31 * Writing derived classes: 
       
    32 *
       
    33 * Application authors should implement a class which derives from this
       
    34 * interface to receive events from list boxes
       
    35 */
       
    36 class MEikListBoxObserver
       
    37     {
       
    38     public:
       
    39 
       
    40         /**
       
    41         * List box event codes
       
    42         */
       
    43         enum TListBoxEvent
       
    44             {
       
    45             /**  Keypress event. */
       
    46             EEventEnterKeyPressed,
       
    47             /**  Item single-tap event */
       
    48             EEventItemClicked,
       
    49             /**  Item two-taps event. */
       
    50             EEventItemDoubleClicked,
       
    51             /**  Special event: reported by directory tree and directory contents list boxes. */
       
    52             EEventItemActioned,
       
    53             /**  Editing started. */
       
    54             EEventEditingStarted,
       
    55             /**  Editing stopped. */
       
    56             EEventEditingStopped,
       
    57             /**  Pen is down and over an item */
       
    58             EEventPenDownOnItem,
       
    59             /**  Pen is dragged from item to another */
       
    60             EEventItemDraggingActioned,
       
    61             /**  Panning is started */
       
    62             EEventPanningStarted,
       
    63             /**  Panning is stopped */
       
    64             EEventPanningStopped,
       
    65             /**  Flick is started */
       
    66             EEventFlickStarted,
       
    67             /**  Flick is stopped */
       
    68             EEventFlickStopped,
       
    69             /**  Item single-tap event. This event should be used
       
    70              by applications that are single click compatible. */
       
    71             EEventItemSingleClicked,
       
    72 			/**  An empty listbox was clicked */
       
    73             EEventEmptyListClicked,
       
    74             /**  An empty area of non-empty listbox was clicked */
       
    75             EEventEmptyAreaClicked         
       
    76             };
       
    77 
       
    78     public:
       
    79         /**
       
    80         * Handles list box events.
       
    81         *
       
    82         * This pure virtual function is invoked by CEikListBox to
       
    83         * notify the observer of list box events.
       
    84         *
       
    85         * @param aListBox   The originating list box.
       
    86         * @param aEventType A code for the event. Further information 
       
    87         *                   may be obtained by accessing the list box itself.
       
    88         */
       
    89         virtual void HandleListBoxEventL(CEikListBox* aListBox, TListBoxEvent aEventType)=0;
       
    90     };
       
    91 
       
    92 #endif