extras/about/inc/AboutContainer.h
branchRCL_3
changeset 22 bec11adf88f9
parent 21 10c6e6d6e4d9
equal deleted inserted replaced
21:10c6e6d6e4d9 22:bec11adf88f9
    21 
    21 
    22 // INCLUDES
    22 // INCLUDES
    23 #include <coecntrl.h>
    23 #include <coecntrl.h>
    24 #include <gdi.h>  
    24 #include <gdi.h>  
    25 #include <eiksbobs.h> 
    25 #include <eiksbobs.h> 
       
    26 #include <gulicon.h>
       
    27 #include "MResourceLoaderObserver.h"
       
    28 
    26 // FORWARD DECLARATIONS
    29 // FORWARD DECLARATIONS
    27 class CEikScrollBarFrame;
    30 class CEikScrollBarFrame;
    28 class CAboutImage;
    31 class CAboutImage;
    29 class CFont;
    32 class CFont;
    30 class TRect;
    33 class TRect;
    31 class TBidiText;
    34 class TBidiText;
    32 class   CAknsBasicBackgroundControlContext;
    35 class CAknsBasicBackgroundControlContext;
    33 #include <gulicon.h>
    36 class CAboutResourceLoader;
       
    37 
    34 
    38 
    35 // CLASS DECLARATION
    39 // CLASS DECLARATION
    36 
    40 
    37 /**
    41 /**
    38 *  CAboutContainer  container control class.
    42 *  CAboutContainer  container control class.
    39 *  
    43 *  The container for About. It handle the system event. 
       
    44 *  And it draws correct texts and images to screen base on the scroll bar.
       
    45 *
    40 */
    46 */
    41 //About container derived from scrollbarobserver to get events on scrollbar movements
    47 
    42 class CAboutContainer : public CCoeControl, public MEikScrollBarObserver
    48 class CAboutContainer : public CCoeControl,
       
    49                         public MEikScrollBarObserver,
       
    50                         public MResourceLoaderObserver
    43     {
    51     {
    44     public: // Constructors and destructor
    52     public: // Constructors and destructor
    45         CAboutContainer();
    53         CAboutContainer();
    46         void ConstructL( const TRect& aRect );
    54         void ConstructL( const TRect& aRect );
    47 
    55 
    71 
    79 
    72         void SetTextL( const TDesC& aText , const TInt aItem );
    80         void SetTextL( const TDesC& aText , const TInt aItem );
    73         void SetImageL( const TDesC& aFileName, TInt aBitmapId );
    81         void SetImageL( const TDesC& aFileName, TInt aBitmapId );
    74         void UpdateScrollIndicatorL();
    82         void UpdateScrollIndicatorL();
    75 
    83 
       
    84     private: //From MResourceLoaderObserver
       
    85         void HandleItemsLoadedL( TInt aError );
       
    86         void HandleResourceLoadCompletedL( const TInt aResourceId, TInt aError );
    76         // text wrapping
    87         // text wrapping
    77 
    88 
    78     private: // Data
    89     private: // Data
    79 
    90 
    80         CArrayPtr<HBufC>* iText;
    91         CArrayPtr<HBufC>* iText;
    93 		CAknsBasicBackgroundControlContext* iSkinContext; // skin data
   104 		CAknsBasicBackgroundControlContext* iSkinContext; // skin data
    94 		CGulIcon* iIcon;
   105 		CGulIcon* iIcon;
    95 		
   106 		
    96         // Judge whether scroll bar is dragged. 
   107         // Judge whether scroll bar is dragged. 
    97         TBool iScrollBarDragged;
   108         TBool iScrollBarDragged;
    98         TInt iNumItem;
   109         
       
   110         //Owned: Resource loader.
       
   111         CAboutResourceLoader* iLoader;
       
   112         
    99         // Judge the break between "real" about box language and the full OSS texts 
   113         // Judge the break between "real" about box language and the full OSS texts 
   100         TBool iBreakFlag;
   114         TBool iBreakFlag;
   101         TBool iIsSvg;
   115         
       
   116         // Store the resource path for load the file
       
   117         TFileName iResourcePath;
       
   118         
       
   119         // Store the item count of the current loading resource.
       
   120         TInt iCurrentCount;
       
   121         
       
   122         // Store the the count of the loaded content's items
       
   123         TInt iFinalCount;
       
   124         
       
   125         // In order to carry out one operation only for getting iFinalCount
       
   126         TBool iHandleFlag;
   102     };
   127     };
   103 
   128 
   104 #endif
   129 #endif
   105 
   130 
   106 // End of File
   131 // End of File