homescreen_plat/hs_renderingplugin_api/inc/xnextrenderingpluginadapter.h
branchRCL_3
changeset 18 d05a55b217df
parent 9 f966699dea19
child 25 137ebc85284b
equal deleted inserted replaced
17:b8fae6b8a148 18:d05a55b217df
     1 /*
     1 /*
     2 * Copyright (c) 2002-2004 Nokia Corporation and/or its subsidiary(-ies).
     2 * Copyright (c) 2009-2010 Nokia Corporation and/or its subsidiary(-ies).
     3 * All rights reserved.
     3 * All rights reserved.
     4 * This component and the accompanying materials are made available
     4 * This component and the accompanying materials are made available
     5 * under the terms of "Eclipse Public License v1.0"
     5 * under the terms of "Eclipse Public License v1.0"
     6 * which accompanies this distribution, and is available
     6 * which accompanies this distribution, and is available
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
     9 * Initial Contributors:
     9 * Initial Contributors:
    10 * Nokia Corporation - initial contribution.
    10 * Nokia Corporation - initial contribution.
    11 *
    11 *
    12 * Contributors:
    12 * Contributors:
    13 *
    13 *
    14 * Description:  External rendering plugin adapter header
    14 * Description:  External rendering plugin adapter
    15 *
    15 *
    16 */
    16 */
    17 
    17 
    18 #ifndef XNEXTRENDERINGPLUGINADAPTER_H
    18 #ifndef XNEXTRENDERINGPLUGINADAPTER_H
    19 #define XNEXTRENDERINGPLUGINADAPTER_H
    19 #define XNEXTRENDERINGPLUGINADAPTER_H
    26 // User includes
    26 // User includes
    27 
    27 
    28 class MXnExtEventHandler;
    28 class MXnExtEventHandler;
    29 
    29 
    30 /**
    30 /**
    31  *  CXnExtRenderingPluginAdapter class
    31  *  Base class for the external rendering plug-ins. Widget developer
       
    32  *  can implement own rendering plug-in if stock plug-ins do not
       
    33  *  provide sufficient functionality. Baddly written plug-in can 
       
    34  *  ruin the Homescreen performance as it runs in the Homescreen
       
    35  *  process. Power save mode must be obeyed in order to maximize
       
    36  *  the standby times of the device.
    32  *
    37  *
    33  *
    38  *
    34  *  @code
    39  *  @code
    35  *
    40  *
    36  *  @endcode
    41  *  @endcode
    37  *
    42  *
    38  *  @lib extrenderingplugin.lib
    43  *  @lib extrenderingplugin.lib
    39  *  @since S60 v5.0
    44  *  @since S60 v5.2
    40  */
    45  */
    41 class CXnExtRenderingPluginAdapter : public CCoeControl
    46 class CXnExtRenderingPluginAdapter : public CCoeControl
    42     {
    47     {
    43 public: // Constructor and destructor
    48 public: // Constructor and destructor
    44     /**
    49     /**
    45      * Two-phased constructor.
    50      * Two-phased constructor.
       
    51      *
       
    52      * @since Series 60 5.2
    46      */
    53      */
    47     IMPORT_C static CXnExtRenderingPluginAdapter* NewL( TUid aImplUid );
    54     IMPORT_C static CXnExtRenderingPluginAdapter* NewL( TUid aImplUid );
    48 
    55 
    49     /**
    56     /**
    50      * Destructor.
    57      * Destructor.
       
    58      *
       
    59      * @since Series 60 5.2
    51      */
    60      */
    52     IMPORT_C virtual ~CXnExtRenderingPluginAdapter();  
    61     IMPORT_C virtual ~CXnExtRenderingPluginAdapter();  
    53 
       
    54 private: // Constructors
       
    55     /**
       
    56      * Constructor
       
    57      */
       
    58     // CXnExtRenderingPluginAdapter();
       
    59 
       
    60     /** 
       
    61      * Second phase constructor 
       
    62      */
       
    63     // void ConstructL();
       
    64 
    62 
    65 public: // New functions,
    63 public: // New functions,
    66 
    64 
    67     /**
    65     /**
    68      * Returns the implementation uid.
    66      * Returns the ECOM implementation uid.
       
    67      *
       
    68      * @since Series 60 5.2
    69      */
    69      */
    70     IMPORT_C TUid ImplUid() const;
    70     IMPORT_C TUid ImplUid() const;
    71 
    71 
    72     /**
    72     /**
    73      * Enters power save mode.
    73      * Is called when Homescreen enters power save mode.
       
    74      * In power save mode all the timers, outstanding requests and animations
       
    75      * must be cancelled in order to save battery.
       
    76      *
       
    77      * @since Series 60 5.2
    74      */
    78      */
    75     IMPORT_C virtual void EnterPowerSaveModeL();
    79     IMPORT_C virtual void EnterPowerSaveModeL();
    76 
    80 
    77     /**
    81     /**
    78      * Exits power save mode.
    82      * Is called when Homescreen exists power save mode.
       
    83      *
       
    84      * @since Series 60 5.2
    79      */    
    85      */    
    80     IMPORT_C virtual void ExitPowerSaveModeL();
    86     IMPORT_C virtual void ExitPowerSaveModeL();
    81 
    87 
    82     /**
    88     /**
    83      * Informs skin change.
    89      * Informs skin change. If plug-in is responsible of loading skin
       
    90      * graphics, all the graphics must be reloaded.
       
    91      *
       
    92      * @since Series 60 5.2
    84      */    
    93      */    
    85     IMPORT_C virtual void SkinChanged();
    94     IMPORT_C virtual void SkinChanged();
    86     
    95     
    87     /**
    96     /**
    88      * Informs focuschange.
    97      * Informs that plug-in element has gained a focus and highlight must be
       
    98      * drawn if appropriate.
       
    99      *
       
   100      * @since Series 60 5.2
       
   101      * @param aDrawNow whether plug-in should draw itself.
    89      */
   102      */
    90     IMPORT_C virtual void FocusChanged( TDrawNow aDrawNow );
   103     IMPORT_C virtual void FocusChanged( TDrawNow aDrawNow );
    91     
   104     
    92     /**
   105     /**
    93      * Informs size change.
   106      * Informs that plug-in element size has changed. Size can change if the
       
   107      * plug-in element is declared relatively to parent element.
       
   108      *
       
   109      * @since Series 60 5.2
    94      */
   110      */
    95     IMPORT_C virtual void SizeChanged();
   111     IMPORT_C virtual void SizeChanged();
    96     
   112     
    97     /**
   113     /**
    98      * Sets the external event handler interface.
   114      * Sets the external event handler interface.