idlehomescreen/xmluirendering/renderingplugins/xnclockfactory/inc/xnclockcontrol.h
branchRCL_3
changeset 23 7be2816dbabd
parent 0 f72a12da539e
equal deleted inserted replaced
19:79311d856354 23:7be2816dbabd
     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:  Control for xuikon's skinnable clock.
    14 * Description:  Clock control
    15 *
    15 *
    16 */
    16 */
    17 
    17 
    18 
    18 
    19 #ifndef _XNCLOCKCONTROL_H
    19 #ifndef _XNCLOCKCONTROL_H
    20 #define _XNCLOCKCONTROL_H
    20 #define _XNCLOCKCONTROL_H
    21 
    21 
    22 // INCLUDES
    22 // System includes
       
    23 #include <e32base.h>
    23 
    24 
    24 // FORWARD DECLARATIONS
    25 // User includes
       
    26 
       
    27 // Forward declarations
    25 class CWindowGc;
    28 class CWindowGc;
    26 class CXnClockAdapter;
    29 class CXnClockAdapter;
    27 class CXnClockChangeHandler;
       
    28 class CXnClockFace;
    30 class CXnClockFace;
    29 
    31 
    30 // CLASS DECLARATION
    32 // Class declaration
    31 /**
    33 /**
    32 *  @ingroup group_xnclockfactory
    34 *  @ingroup group_xnclockfactory
    33 *  @lib xnclockfactory.lib
    35 *  @lib xnclockfactory.lib
    34 *  @since S60
    36 *  @since S60 5.0
    35 */
    37 */
    36 class CXnClockControl : public CBase
    38 NONSHARABLE_CLASS( CXnClockControl ) : public CBase
    37     {
    39     {
    38 public: // Constructors and destructor
    40 public: // Constructors and destructor
    39 
    41 
    40     /**
    42     /**
    41     * Two-phased constructor.
    43     * Two-phased constructor.
    82     * Gets the clock format 
    84     * Gets the clock format 
    83     *    
    85     *    
    84     * @return Clock format.
    86     * @return Clock format.
    85     */    
    87     */    
    86     TClockFormat Format() const;
    88     TClockFormat Format() const;
    87     
    89         
    88     /**
       
    89     * Updates time and locale state of the clock.
       
    90     */
       
    91     void TimeOrLocaleChanged();
       
    92     
       
    93     /**
    90     /**
    94     * Draws the clock
    91     * Draws the clock
    95     *
    92     *
    96     * @param aGc Context where to draw
    93     * @param aGc Context where to draw
    97     * @param aRect Rect Clock rect 
    94     * @param aRect Rect Clock rect 
    98     */
    95     */
    99     void Draw( CWindowGc& aGc, const TRect& aRect ) const;
    96     void Draw( CWindowGc& aGc, const TRect& aRect );
   100     
    97     
   101     /**
    98     /**
   102     * Starts the clock timer.
    99     * Starts the clock timer.
   103     * Used when the clock gains visibility.
   100     * Used when the clock gains visibility.
   104     */
   101     */
   139 
   136 
   140     // Timer, owned
   137     // Timer, owned
   141     CPeriodic*              iTimer;
   138     CPeriodic*              iTimer;
   142     // Clock face, owned
   139     // Clock face, owned
   143     CXnClockFace*           iFace;
   140     CXnClockFace*           iFace;
   144     // Clock change handler, owned
       
   145     CXnClockChangeHandler*  iHandler;
       
   146     // Clock adapter, not owned
   141     // Clock adapter, not owned
   147     CXnClockAdapter*        iAdapter;            
   142     CXnClockAdapter*        iAdapter;            
   148     // Clock format
   143     // Clock format
   149     TClockFormat            iClockFormat;    
   144     TClockFormat            iClockFormat;    
   150     // Flag indicating whetger format clock from locale
   145     // Flag indicating whetger format clock from locale