locationsystemui/locationsysui/locblidsatelliteinfo/inc/CSatelliteDialog.h
branchRCL_3
changeset 44 2b4ea9893b66
parent 42 02ba3f1733c6
child 45 6b6920c56e2f
equal deleted inserted replaced
42:02ba3f1733c6 44:2b4ea9893b66
     1 /*
       
     2 * Copyright (c) 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: 
       
    15 *     Implements interface for SatelliteData.
       
    16 *
       
    17 */
       
    18 
       
    19 
       
    20 #ifndef __SATELLITE_DIALOG_H__
       
    21 #define __SATELLITE_DIALOG_H__
       
    22 
       
    23 //  INCLUDES
       
    24 #include <AknDialog.h>
       
    25 #include <AknQueryDialog.h>
       
    26 #include <coecntrl.h>
       
    27 #include <e32base.h>
       
    28 #include <s32std.h>
       
    29 #include <aknlistquerydialog.h>
       
    30 #include <aknlists.h>
       
    31 #include "SatInfoConsts.h"
       
    32 
       
    33 // FORWARD DECLARATION
       
    34 class CEikonEnv;
       
    35 class CEikFormattedCellListBox;
       
    36 class MSatelliteEng;
       
    37 class CAknPopupList;
       
    38 class CEikListBox;
       
    39 class CAknListQueryDialog;
       
    40 class CSatelliteListBox;
       
    41 class CAknsFrameBackgroundControlContext;
       
    42 class CSatelliteControl;
       
    43 
       
    44 // CLASS DECLARATION
       
    45 /**
       
    46  *  Implements satellite's dialog
       
    47  */
       
    48 NONSHARABLE_CLASS( CSatelliteDialog ) : public CAknDialog
       
    49     {
       
    50     public:
       
    51         /**
       
    52          * Two-phased constructor.
       
    53          *
       
    54          * @return CSatelliteDialog object.
       
    55          */
       
    56         static CSatelliteDialog* NewL( MSatelliteEng& aEngine );
       
    57 
       
    58         /**
       
    59          * Destructor.
       
    60          */
       
    61         ~CSatelliteDialog();
       
    62 
       
    63     private:
       
    64         /**
       
    65          * By default Symbian 2nd phase constructor is private.
       
    66          */
       
    67         void ConstructL( );
       
    68 
       
    69         /**
       
    70          * C++ default constructor.
       
    71          */
       
    72         CSatelliteDialog(MSatelliteEng& aEngine);
       
    73         
       
    74         void SetSizeAndPosition(const TSize& aSize);
       
    75         
       
    76     protected:
       
    77     	SEikControlInfo CreateCustomControlL(TInt aControlType);	    
       
    78 	    TTypeUid::Ptr MopSupplyObject(TTypeUid aId);
       
    79 	    void SizeChanged();
       
    80 	    TBool OkToExitL(TInt aButtonId);
       
    81 
       
    82     public: // from CAknDialog
       
    83         TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent,
       
    84                                      TEventCode aType);
       
    85 
       
    86     public: // new functions
       
    87         /**
       
    88          * Update dialog
       
    89          */
       
    90         void UpdateL();
       
    91         
       
    92         /**
       
    93         * Set the launch view of the dialog
       
    94         */        
       
    95         void SetLaunchView(TSatDialogView aView);
       
    96         
       
    97     private: // data
       
    98     
       
    99         //Reference to the engine
       
   100         MSatelliteEng& iEngine;
       
   101         
       
   102         //Own: Object to draw the fame and its background
       
   103         CAknsFrameBackgroundControlContext* iBgContext;
       
   104         
       
   105         //Own: Satellite control responsible for all the drawing in the dialog
       
   106         CSatelliteControl* iSatelliteControl;        
       
   107     };
       
   108 
       
   109 #endif // __SATELLITE_DIALOG_H__
       
   110 
       
   111 // End of File