idlehomescreen/xmluirendering/uiengine/inc/xnbgcontrol.h
changeset 5 c743ef5928ba
parent 2 08c6ee43b396
child 15 ff572dfe6d86
equal deleted inserted replaced
4:4d54b72983ae 5:c743ef5928ba
    22 // System includes
    22 // System includes
    23 #include <e32base.h>
    23 #include <e32base.h>
    24 #include <coecntrl.h>
    24 #include <coecntrl.h>
    25 
    25 
    26 // User includes
    26 // User includes
       
    27 #include "xnuistatelistener.h"
    27 
    28 
    28 // Forward declarations
    29 // Forward declarations
    29 class CAknsLayeredBackgroundControlContext;
       
    30 
    30 
    31 /**
    31 /**
    32  * Background appearance drawer
    32  * Background appearance drawer
    33  * 
    33  * 
    34  * @ingroup group_xnlayoutengine
    34  * @ingroup group_xnlayoutengine
    35  * @lib xn3layoutengine.lib
    35  * @lib xn3layoutengine.lib
    36  * @since S60 5.0
    36  * @since S60 5.0
    37  */
    37  */
    38 NONSHARABLE_CLASS( CXnBgControl ) : public CCoeControl 
    38 NONSHARABLE_CLASS( CXnBgControl ) : public CCoeControl , public MXnUiStateObserver
    39     {
    39     {
    40 public:    
    40 public:    
    41     // Constructors and destructor
    41     // Constructors and destructor
    42     
    42     
    43     /**
    43     /**
    98     
    98     
    99 public:
    99 public:
   100     // new functions
   100     // new functions
   101     void SetCompoundControl( CCoeControl* aControl );
   101     void SetCompoundControl( CCoeControl* aControl );
   102     
   102     
       
   103 	/**
       
   104      * Service for removing grabbing controls
       
   105      */
       
   106     void ResetGrabbingL();
       
   107     
       
   108     /**
       
   109      * Prepares control for destroying
       
   110      */
       
   111     void PrepareDestroy();
       
   112   
       
   113 private:  
       
   114 	// new functions
       
   115     
       
   116 	/**
       
   117      * Removes recursively grabbing controls
       
   118      */
       
   119     void RemoveGrabbingControL( const CCoeControl* aControl, const TPointerEvent& aEvent ) const;
       
   120     
       
   121 private:
       
   122     // from MXnUiStateObserver
       
   123     
       
   124     /**
       
   125      * @see MXnUiStateObserver
       
   126      */
       
   127     void NotifyForegroundChanged( TForegroundStatus aStatus );
       
   128     
       
   129     /**
       
   130      * @see MXnUiStateObserver
       
   131      */
       
   132     void NotifyLightStatusChanged( TBool aLightsOn );
       
   133     
       
   134     /**
       
   135      * @see MXnUiStateObserver
       
   136      */
       
   137     void NotifyInCallStateChaged( TBool aInCall );   
       
   138     
   103 private:
   139 private:
   104     // data
   140     // data
   105     
   141     
   106     /** Compound Control, Not owned */
   142     /** Compound Control, Not owned */
   107     CCoeControl* iControl;
   143     CCoeControl* iControl;
       
   144     
       
   145 	/** stored point of EButton1Down */
       
   146     TPoint iHitpoint;
       
   147     
   108     };
   148     };
   109 
   149 
   110 #endif // _XNBGCONTROL_H
   150 #endif // _XNBGCONTROL_H