videoplayback/inc/mpxvideoplaybackmediadetailsviewer.h
branchRCL_3
changeset 21 315810614048
parent 11 8970fbd719ec
equal deleted inserted replaced
20:2d690156cf8f 21:315810614048
    13 *
    13 *
    14 * Description:  Media Details Viewer
    14 * Description:  Media Details Viewer
    15 *
    15 *
    16 */
    16 */
    17 
    17 
    18 // Version : %version:  e003sa33#6 %
    18 
       
    19 // Version : %version:  7 %
       
    20 
    19 
    21 
    20 #ifndef MPXVIDEOPLAYBACKMEDIADETAILSVIEWER_H_
    22 #ifndef MPXVIDEOPLAYBACKMEDIADETAILSVIEWER_H_
    21 #define MPXVIDEOPLAYBACKMEDIADETAILSVIEWER_H_
    23 #define MPXVIDEOPLAYBACKMEDIADETAILSVIEWER_H_
    22 
    24 
    23 //  INCLUDES
    25 //  INCLUDES
    76         /**
    78         /**
    77         * From CCoeControl,Draw.
    79         * From CCoeControl,Draw.
    78         * @param aRect drawable area.
    80         * @param aRect drawable area.
    79         */
    81         */
    80         void Draw( const TRect& aRect ) const;
    82         void Draw( const TRect& aRect ) const;
    81         
    83 
    82         /**
    84         /**
    83         * Creates new skins for the control
    85         * Creates new skins for the control
    84         * @return void
    86         * @return void
    85         */
    87         */
    86         void SkinChangeL();        
    88         void SkinChangeL();
    87 
    89 
    88 
    90 
    89     public: // from CoeControl
    91     public: // from CoeControl
    90 
    92 
    91         /**
    93         /**
    98         /*
   100         /*
    99          *  Bring the button bar to its original state
   101          *  Bring the button bar to its original state
   100          *  @since 5.0
   102          *  @since 5.0
   101          */
   103          */
   102         void Reset();
   104         void Reset();
   103         
   105 
   104         /** 
   106         /**
   105         * Accessor for the dynamically calculated viewer rect
   107         * Accessor for the dynamically calculated viewer rect
   106         * @since 9.2 
   108         * @since 9.2
   107         * @return the viewer rect
   109         * @return the viewer rect
   108         */                   
   110         */
   109         TRect ViewerRect();         
   111         TRect ViewerRect();
   110               
   112 
   111 
   113 
   112     private:
   114     private:
   113         
   115 
   114         void CreateLabelsL();
   116         void CreateLabelsL();
   115         
   117 
   116         void LaunchDRMDetailsL();
   118         void LaunchDRMDetailsL();
   117         
   119 
   118         /**
   120         /**
   119         * Sets label rects and text
   121         * Sets label rects and text
   120         */
   122         */
   121         void FormatLabelsL() const;   
   123         void FormatLabelsL() const;
   122         
   124 
   123         void UpdateBackgroundBitmapL() const;
   125         void UpdateBackgroundBitmapL() const;
   124         
   126 
   125         /** 
   127         /**
   126         * Timer callback for scroll timer
   128         * Timer callback for scroll timer
   127         * @since 9.2 
   129         * @since 9.2
   128         * @param aPtr Pointer to timers callback 
   130         * @param aPtr Pointer to timers callback
   129         * @return KErrNone 
   131         * @return KErrNone
   130         */ 
   132         */
   131         static TInt ScrollTimer( TAny* aPtr );
   133         static TInt ScrollTimer( TAny* aPtr );
   132 
   134 
   133         /** 
   135         /**
   134         * Handle Scroll Timer
   136         * Handle Scroll Timer
   135         * @since 9.2 
   137         * @since 9.2
   136         * @return void 
   138         * @return void
   137         */ 
   139         */
   138         void HandleScrollTimerL();
   140         void HandleScrollTimerL();
   139         
   141 
   140         /** 
   142         /**
   141         * Determine the number of items to be shown in the viewer
   143         * Determine the number of items to be shown in the viewer
   142         * @since 9.2 
   144         * @since 9.2
   143         * @return the number of rows to be created
   145         * @return the number of rows to be created
   144         */         
   146         */
   145         TInt NumOfItemsShownInViewerL();
   147         TInt NumOfItemsShownInViewerL();
   146         
   148 
   147         /** 
   149         /**
   148         * Dynamically calculate determine the viewer rectangle dyanmically
   150         * Dynamically calculate determine the viewer rectangle dyanmically
   149         * @since 9.2 
   151         * @since 9.2
   150         * @return the viewer rect
   152         * @return the viewer rect
   151         */                   
   153         */
   152         TRect CalculateViewerRectL();          
   154         TRect CalculateViewerRectL();
   153 
   155 
   154         /**
   156         /**
   155          * Update the text of filename label
   157          * Update the text of filename label
   156          */
   158          */
   157         void UpdateFilenameL();
   159         void UpdateFilenameL();
   160          * Update the text of title label
   162          * Update the text of title label
   161          */
   163          */
   162         void UpdateTitleL();
   164         void UpdateTitleL();
   163 
   165 
   164     private:
   166     private:
   165         
   167 
   166         /**
   168         /**
   167          * Scroll the too long text for some label
   169          * Scroll the too long text for some label
   168          */
   170          */
   169         class TTextScroller
   171         class TTextScroller
   170         {
   172         {
   171             public:
   173             public:
   172         
   174 
   173                 /**
   175                 /**
   174                  * Constructor
   176                  * Constructor
   175                  */
   177                  */
   176                 TTextScroller();
   178                 TTextScroller();
   177 
   179 
   192                  * @param aDesText to which the scrolled text to be appended
   194                  * @param aDesText to which the scrolled text to be appended
   193                  */
   195                  */
   194                 void ScrollText( const TDesC& aSrcText, TDes& aDesText );
   196                 void ScrollText( const TDesC& aSrcText, TDes& aDesText );
   195 
   197 
   196             private:
   198             private:
   197                 
   199 
   198                 TUint32		iDelayBeginningTick;
   200                 TUint32        iDelayBeginningTick;
   199                 TInt		iTextScrollPos;
   201                 TInt           iTextScrollPos;
   200                 TBool		iDelay;
   202                 TBool          iDelay;
   201                 TBool		iScroll;
   203                 TBool          iScroll;
   202                 TInt		iSrcTextLen;
   204                 TInt           iSrcTextLen;
   203         };
   205         };
   204 
   206 
   205     private:    // Data
   207     private:    // Data
   206         
   208 
   207         CMPXVideoPlaybackControlsController* iController;
   209         CMPXVideoPlaybackControlsController* iController;
   208         
   210 
   209         CEikLabel*                           iClipnameLabel;
   211         CEikLabel*                           iClipnameLabel;
   210         CEikLabel*                           iTitleLabel;
   212         CEikLabel*                           iTitleLabel;
   211         CEikLabel*                           iArtistLabel;        
   213         CEikLabel*                           iArtistLabel;
   212         CEikLabel*                           iFormatLabel;
   214         CEikLabel*                           iFormatLabel;
   213         CEikLabel*                           iResolutionLabel;
   215         CEikLabel*                           iResolutionLabel;
   214         CEikLabel*                           iDurationLabel;
   216         CEikLabel*                           iDurationLabel;
   215         CEikLabel*                           iBitrateLabel;
   217         CEikLabel*                           iBitrateLabel;
   216         CEikLabel*                           iLicenseLabel;
   218         CEikLabel*                           iLicenseLabel;
   217         CEikLabel*                           iAdditionalLabel;
   219         CEikLabel*                           iAdditionalLabel;
   218         
   220 
   219 
   221 
   220         CFbsBitmap*                          iBackgroundBitmap;   
   222         CFbsBitmap*                          iBackgroundBitmap;
   221         CPeriodic*                           iScrollingTextTimer;
   223         CPeriodic*                           iScrollingTextTimer;
   222         TRect                                iViewerRect;
   224         TRect                                iViewerRect;
   223         HBufC*                               iAdditionalString;
   225         HBufC*                               iAdditionalString;
   224         TTextScroller                        iFilenameScroller;
   226         TTextScroller                        iFilenameScroller;
   225         TTextScroller                        iTitleScroller;
   227         TTextScroller                        iTitleScroller;
   226         // after every scrolling label has updated, draw them
   228         // after every scrolling label has updated, draw them
   227         TBool                                iScrolledTextUpdated; 
   229         TBool                                iScrolledTextUpdated;
       
   230         TBool                                iDrmDetailsLaunched;
   228 };
   231 };
   229 
   232 
   230 
   233 
   231 
   234 
   232 #endif /* MPXVIDEOPLAYBACKMEDIADETAILSVIEWER_H_ */
   235 #endif /* MPXVIDEOPLAYBACKMEDIADETAILSVIEWER_H_ */