aknlistquerycontrol.h

Go to the documentation of this file.
00001 /* ============================================================================
00002 *  Name     : AknListQueryControl.h
00003 *  Part of  : Avkon
00004 *  Implementation notes:
00005 *   Declaration of Avkon list query control.
00006 *  Copyright © 2002 Nokia Corporation.
00007 *  This material, including documentation and any related 
00008 *  computer programs, is protected by copyright controlled by 
00009 *  Nokia Corporation. All rights are reserved. Copying, 
00010 *  including reproducing, storing,  adapting or translating, any 
00011 *  or all of this material requires the prior written consent of 
00012 *  Nokia Corporation. This material also contains confidential 
00013 *  information which may not be disclosed to others without the 
00014 *  prior written consent of Nokia Corporation.
00015 */
00016 
00017 
00018 #ifndef     __AKN_LIST_QUERY_CONTROL_H
00019 #define     __AKN_LIST_QUERY_CONTROL_H
00020 
00021 #include <AknControl.h>
00022 
00023 #include <aknpopupheadingpane.h>
00024 #include <aknmessagequerycontrol.h>
00025 
00026 class CEikFormattedCellListBox;
00027 struct TAknPopupWindowLayoutDef;
00028 
00032 class CAknListQueryControl : public CAknControl
00033     {
00034     public:
00038         IMPORT_C CAknListQueryControl();
00039     
00043         IMPORT_C void ConstructFromResourceL(TResourceReader& aRes);
00044 
00048         IMPORT_C virtual ~CAknListQueryControl();
00049 
00055         IMPORT_C TSize MinimumSize();
00056 
00062         IMPORT_C TInt CountComponentControls() const;
00063 
00070         IMPORT_C CCoeControl* ComponentControl(TInt anIndex) const;
00071 
00080         IMPORT_C TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, TEventCode aType);
00081 
00087         IMPORT_C void Draw(const TRect& aRect) const;
00088 
00093         IMPORT_C void SetLayout(TAknPopupWindowLayoutDef* aLayout);
00094 
00095         IMPORT_C void FocusChanged(TDrawNow aDrawNow);
00096 
00101         inline CEikFormattedCellListBox* Listbox() const;
00102 
00107         inline CAknPopupHeadingPane* Heading() const;
00108 
00113         inline TInt Listtype() const;
00114 
00119         IMPORT_C void HandlePointerEventL(const TPointerEvent& aPointerEvent);
00120         
00125         CAknMessageQueryControl* MessageBox() const;
00126 
00127     private:
00131         IMPORT_C void* ExtensionInterface( TUid aInterface );
00132 
00133     private:
00134         CEikFormattedCellListBox* iListBox;
00135         CAknPopupHeadingPane*     iHeading;
00136         TInt                      iListType;
00137         TAknPopupWindowLayoutDef* iLayout;
00138         CAknMessageQueryControl*  iMessageBox;        
00139 
00140         TInt iSpare[1];
00141 
00142         public:
00143 
00147         inline CEikFormattedCellListBox* listbox() const;
00148     };
00149 
00150 inline CEikFormattedCellListBox *CAknListQueryControl::Listbox() const 
00151         { 
00152         return iListBox; 
00153         }
00154 
00155 inline CAknPopupHeadingPane *CAknListQueryControl::Heading() const 
00156     {
00157     if ( iHeading && iHeading->Prompt() )
00158         return iHeading;
00159     return 0;
00160     }
00161 
00162 inline TInt CAknListQueryControl::Listtype() const 
00163         { 
00164         return iListType; 
00165         }
00166 
00170 inline CEikFormattedCellListBox* CAknListQueryControl::listbox() const 
00171         { 
00172         return Listbox();
00173         }
00174 
00175 #endif

Copyright © Nokia Corporation 2001-2008
Back to top