classicui_pub/lists_api/inc/EIKLBO.H
changeset 0 2f259fa3e83a
child 21 978afdc0236f
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/classicui_pub/lists_api/inc/EIKLBO.H	Tue Feb 02 01:00:49 2010 +0200
@@ -0,0 +1,92 @@
+/*
+* Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:
+*
+*/
+
+
+#if !defined(__EIKLBO_H__)
+#define __EIKLBO_H__
+
+class CEikListBox; 
+
+/**
+* List box observer interface.
+*
+* Each list box observer may be registered with a number of list
+* boxes; each of these send events to the list box observer through
+* its HandeListBoxEventL() method.
+*
+* Writing derived classes: 
+*
+* Application authors should implement a class which derives from this
+* interface to receive events from list boxes
+*/
+class MEikListBoxObserver
+    {
+    public:
+
+        /**
+        * List box event codes
+        */
+        enum TListBoxEvent
+            {
+            /**  Keypress event. */
+            EEventEnterKeyPressed,
+            /**  Item single-tap event */
+            EEventItemClicked,
+            /**  Item two-taps event. */
+            EEventItemDoubleClicked,
+            /**  Special event: reported by directory tree and directory contents list boxes. */
+            EEventItemActioned,
+            /**  Editing started. */
+            EEventEditingStarted,
+            /**  Editing stopped. */
+            EEventEditingStopped,
+            /**  Pen is down and over an item */
+            EEventPenDownOnItem,
+            /**  Pen is dragged from item to another */
+            EEventItemDraggingActioned,
+            /**  Panning is started */
+            EEventPanningStarted,
+            /**  Panning is stopped */
+            EEventPanningStopped,
+            /**  Flick is started */
+            EEventFlickStarted,
+            /**  Flick is stopped */
+            EEventFlickStopped,
+            /**  Item single-tap event. This event should be used
+             by applications that are single click compatible. */
+            EEventItemSingleClicked,
+			/**  An empty listbox was clicked */
+            EEventEmptyListClicked,
+            /**  An empty area of non-empty listbox was clicked */
+            EEventEmptyAreaClicked         
+            };
+
+    public:
+        /**
+        * Handles list box events.
+        *
+        * This pure virtual function is invoked by CEikListBox to
+        * notify the observer of list box events.
+        *
+        * @param aListBox   The originating list box.
+        * @param aEventType A code for the event. Further information 
+        *                   may be obtained by accessing the list box itself.
+        */
+        virtual void HandleListBoxEventL(CEikListBox* aListBox, TListBoxEvent aEventType)=0;
+    };
+
+#endif