homescreensrv_plat/idlefw_api/inc/aifweventhandler.h
branchRCL_3
changeset 9 d0529222e3f0
parent 0 79c6a41cd166
equal deleted inserted replaced
4:1a2a00e78665 9:d0529222e3f0
    17 
    17 
    18 
    18 
    19 #ifndef M_AIFWEVENTHANDLER_H
    19 #ifndef M_AIFWEVENTHANDLER_H
    20 #define M_AIFWEVENTHANDLER_H
    20 #define M_AIFWEVENTHANDLER_H
    21 
    21 
       
    22 // System includes
    22 #include <e32cmn.h>
    23 #include <e32cmn.h>
    23 #include <aifwdefs.h>
       
    24 
    24 
       
    25 // User includes
       
    26 
       
    27 // Forward declarations
    25 class CAiUiController;
    28 class CAiUiController;
    26 class CAiContentPublisher;
    29 class CHsContentPublisher;
       
    30 class THsPublisherInfo;
    27 
    31 
    28 /**
    32 /**
    29  * Active Idle Framework internal event handling interface. 
    33  * Active Idle Framework internal event handling interface. 
    30  * Events from UI controllers are forwarded to this interface for processing 
    34  * Events from UI controllers are forwarded to this interface for processing 
    31  * on the Active Idle Framework side.
    35  * on the Active Idle Framework side.
    32  *
    36  *
    33  * @since S60 3.2
    37  * @since S60 3.2
    34  */
    38  */
    35 class MAiFwEventHandler
    39 class MAiFwEventHandler
    36 {
    40     {
    37 public:
    41 public:
       
    42     // new functions
       
    43     
    38     /**
    44     /**
    39      * Application environment ready callback. Main UI controller calls this 
    45      * Application environment ready callback. Main UI controller calls this 
    40      * method when application framework is initialized.
    46      * method when application framework is initialized.
       
    47      *
       
    48      * @since S60 3.2
    41      */
    49      */
    42     virtual void AppEnvReadyL() = 0;
    50     virtual void AppEnvReadyL() = 0;
    43 
    51 
    44     /**
    52     /**
    45      * UI ready event handler.
    53      * UI ready event handler.
    46      *
    54      *
       
    55      * @since S60 3.2
    47      * @param aUiController Active Idle UI Controller which manages the UI 
    56      * @param aUiController Active Idle UI Controller which manages the UI 
    48      *                      that is ready.
    57      *                      that is ready.     
    49      */
    58      */
    50     virtual void HandleUiReadyEventL( CAiUiController& aUiController ) = 0;
    59     virtual void HandleUiReadyEventL( CAiUiController& aUiController ) = 0;
    51 
    60 
    52     /**
    61     /**
    53      * UI activation event handler.
    62      * UI activation event handler.
    54      *     
    63      *
       
    64      * @since S60 3.2     
    55      */
    65      */
    56     virtual void HandleActivateUI() = 0;
    66     virtual void HandleActivateUI() = 0;
    57     
    67     
    58     /**
    68     /**
    59      * UI shutdown event handler.
    69      * UI shutdown event handler.
    60      *
    70      *
       
    71      * @since S60 3.2
    61      * @param aUiController Active Idle UI Controller which manages the UI 
    72      * @param aUiController Active Idle UI Controller which manages the UI 
    62      *                      that was shut down.
    73      *                      that was shut down.     
    63      */
    74      */
    64     virtual void HandleUiShutdown( CAiUiController& aUiController ) = 0;
    75     virtual void HandleUiShutdown( CAiUiController& aUiController ) = 0;
    65 
       
    66     /**
       
    67      * UI has changed, load data plugin.
       
    68      *
       
    69      * @param aPublisherInfo Publisher info describing plugin to load.
       
    70      */    
       
    71     virtual void HandleLoadPluginL( const TAiPublisherInfo& aPublisherInfo ) = 0;
       
    72     
       
    73     /**
       
    74      * UI has changed, destroy data plugin.
       
    75      *
       
    76      * @param aPublisherInfo Publisher info describing plugin to destroy.
       
    77      */    
       
    78     virtual void HandleDestroyPluginL( const TAiPublisherInfo& aPublisherInfo ) = 0;    
       
    79 
    76 
    80     /**
    77     /**
    81      * Active Idle Framework Plug-in event handler. UI controllers forward
    78      * Active Idle Framework Plug-in event handler. UI controllers forward
    82      * events that are targeted to Active Idle Content Publisher Plug-ins
    79      * events that are targeted to Active Idle Content Publisher Plug-ins
    83      * to this method.
    80      * to this method.
    84      *
    81      *
    85      * @param aParam event parameters from the UI model.     
    82      * @since S60 3.2
       
    83      * @param aParam event parameters from the UI model.          
    86      */
    84      */
    87     virtual void HandlePluginEvent( const TDesC& aParam ) = 0;
    85     virtual void HandlePluginEvent( const TDesC& aParam ) = 0;
    88 
    86 
    89     /**
    87     /**
    90      * Active Idle Framework Plug-in event handler. UI controllers forward
    88      * Active Idle Framework Plug-in event handler. UI controllers forward
    91      * events that are targeted to Active Idle Content Publisher Plug-ins
    89      * events that are targeted to Active Idle Content Publisher Plug-ins
    92      * to this method.
    90      * to this method.
    93      *
    91      *
       
    92      * @since S60 5.2
    94      * @param aPublisherInfo publisher info.
    93      * @param aPublisherInfo publisher info.
    95      * @param aParam event parameters from the UI model.
    94      * @param aParam event parameters from the UI model.
    96      */
    95      */
    97     virtual void HandlePluginEventL( const TAiPublisherInfo& aPublisherInfo, const TDesC& aParam ) = 0;
    96     virtual void HandlePluginEventL( 
       
    97         const THsPublisherInfo& aPublisherInfo, 
       
    98         const TDesC& aParam ) = 0;
    98 
    99 
    99     /**
   100     /**
   100      * Queries if a Content Publiseher Plug-in has settings     
   101      * Queries if a Content Publiseher Plug-in has settings     
   101      *
   102      *
       
   103      * @since S60 5.2
   102      * @param aPublisherInfo publisher info.
   104      * @param aPublisherInfo publisher info.
   103      * @param aMenuItem menuitem type.
   105      * @param aMenuItem menuitem type.
   104      */          
   106      */          
   105     virtual TBool HasMenuItemL( const TAiPublisherInfo& aPublisherInfo, const TDesC& aMenuItem ) = 0;
   107     virtual TBool HasMenuItemL( 
       
   108         const THsPublisherInfo& aPublisherInfo, 
       
   109         const TDesC& aMenuItem ) = 0;
   106 
   110 
   107     /**
   111     /**
   108      * Refresh content request. UI controller can use this interface to request
   112      * Refresh content request. UI controller can use this interface to request
   109      * a content publisher plug-in to refresh (re-publish) a specific content 
   113      * a content publisher plug-in to refresh (re-publish) a specific content 
   110      * item.
   114      * item.
   111      *
   115      *
       
   116      * @since S60 3.2
   112      * @param aContentCid Textual identifier of the content to refresh.
   117      * @param aContentCid Textual identifier of the content to refresh.
   113      * @return True if the content publisher plug-in is found and the plugin 
   118      * @return True if the content publisher plug-in is found and the plugin 
   114      *         will refresh the content by calling its content observer. 
   119      *         will refresh the content by calling its content observer. 
   115      *         False otherwise.
   120      *         False otherwise.
   116      */
   121      */
   117      virtual TBool RefreshContent( const TDesC& aContentCid ) = 0;
   122     virtual TBool RefreshContent( const TDesC& aContentCid ) = 0;
   118 
   123 
       
   124     /**
       
   125      * Refresh content request. UI controller can use this interface to request
       
   126      * a content publisher plug-in to refresh (re-publish) a specific content 
       
   127      * item.
       
   128      *
       
   129      * @since S60 5.2
       
   130      * @param aPublisherInfo publisher info.
       
   131      * @param aContentCid Textual identifier of the content to refresh.
       
   132      * @return True if the content publisher plug-in is found and the plugin 
       
   133      *         will refresh the content by calling its content observer. 
       
   134      *         False otherwise.
       
   135      */
       
   136     virtual TBool RefreshContent( const THsPublisherInfo& aPublisherInfo,
       
   137         const TDesC& aContentCid ) = 0;
       
   138 
       
   139     /**
       
   140      * Suspend content request. UI controller can use this interface to request
       
   141      * a content publisher plug-in to suspend a specific content 
       
   142      * item.
       
   143      *
       
   144      * @since S60 5.2
       
   145      * @param aPublisherInfo publisher info.
       
   146      * @param aContentCid Textual identifier of the content to refresh.
       
   147      * @return True if the content publisher plug-in is found and the plugin 
       
   148      *         will refresh the content by calling its content observer. 
       
   149      *         False otherwise.
       
   150      */    
       
   151     virtual TBool SuspendContent( const THsPublisherInfo& aPublisherInfo,
       
   152         const TDesC& aContentCid ) = 0;
       
   153         
   119     /**
   154     /**
   120      * Service to check if menu is open.
   155      * Service to check if menu is open.
   121      *
   156      *
       
   157      * @since S60 3.2
   122      * @return ETrue if menu is open, EFalse otherwise
   158      * @return ETrue if menu is open, EFalse otherwise
   123      */
   159      */
   124     virtual TBool QueryIsMenuOpen() = 0;
   160     virtual TBool QueryIsMenuOpen() = 0;                  
   125 
       
   126     /**
       
   127      * Service to process the state changes
       
   128      *
       
   129      * @param aState changed state
       
   130      */    
       
   131     virtual void ProcessStateChange( TAifwStates aState ) = 0;
       
   132                   
       
   133 protected:
       
   134     /**
       
   135      * Protected destructor prevents deletion through this interface.
       
   136      */
       
   137     ~MAiFwEventHandler() { }
       
   138     };
   161     };
   139 
   162 
   140 #endif // M_AIEVENTHANDLEREXTENSION_H
   163 #endif // M_AIEVENTHANDLEREXTENSION_H
       
   164 
       
   165 // End of file