videoplayback/videoplaybackcontrols/src/mpxvideoplaybackbutton.cpp
branchRCL_3
changeset 6 7d91903f795f
parent 0 96612d01cf9f
child 23 8f0df5c82986
--- a/videoplayback/videoplaybackcontrols/src/mpxvideoplaybackbutton.cpp	Tue Feb 02 00:12:10 2010 +0200
+++ b/videoplayback/videoplaybackcontrols/src/mpxvideoplaybackbutton.cpp	Fri Feb 19 22:52:52 2010 +0200
@@ -15,7 +15,7 @@
 *
 */
 
-// Version : %version: 8 %
+// Version : %version: 9 %
 
 
 
@@ -39,11 +39,13 @@
 // Symbian 2nd phase constructor can leave.
 // -------------------------------------------------------------------------------------------------
 //
-void CMPXVideoPlaybackButton::ConstructL( TRect aRect, const TDesC &aIconPath )
+void CMPXVideoPlaybackButton::ConstructL( CMPXVideoPlaybackControlsController* aController, 
+                                          TRect aRect, const TDesC &aIconPath )
 {
     MPX_DEBUG(_L("CMPXVideoPlaybackButton::ConstructL()"));
 
     iIConPath = aIconPath.AllocL();
+    iController = aController;
 
     SetRect( aRect );
 }
@@ -53,14 +55,15 @@
 // Two-phased constructor.
 // -------------------------------------------------------------------------------------------------
 //
-CMPXVideoPlaybackButton* CMPXVideoPlaybackButton::NewL( TRect aRect, const TDesC &aIconPath)
+CMPXVideoPlaybackButton* CMPXVideoPlaybackButton::NewL( CMPXVideoPlaybackControlsController* aController, 
+                                                        TRect aRect, const TDesC &aIconPath)
 {
     MPX_DEBUG(_L("CMPXVideoPlaybackButton::NewL()"));
 
     CMPXVideoPlaybackButton* self = new ( ELeave ) CMPXVideoPlaybackButton();
 
     CleanupStack::PushL( self );
-    self->ConstructL( aRect, aIconPath );
+    self->ConstructL( aController, aRect, aIconPath );
     CleanupStack::Pop();
     return self;
 }
@@ -193,17 +196,20 @@
     CWindowGc& gc = SystemGc();
     gc.SetClippingRect( aRect );
 
-    if ( Window().DisplayMode() == EColor16MAP )
+    if ( iController->SetBackgroundBlack() )
     {
-        gc.SetDrawMode( CGraphicsContext::EDrawModeWriteAlpha );
-        gc.SetBrushColor( TRgb::Color16MAP( 255 ) );
-        gc.Clear( aRect );
-    }
-    else if ( Window().DisplayMode() == EColor16MA )
-    {
-        gc.SetDrawMode( CGraphicsContext::EDrawModeWriteAlpha );
-        gc.SetBrushColor( TRgb::Color16MA( 0 ) );
-        gc.Clear( aRect );
+        if ( Window().DisplayMode() == EColor16MAP )
+        {
+            gc.SetDrawMode( CGraphicsContext::EDrawModeWriteAlpha );
+            gc.SetBrushColor( TRgb::Color16MAP( 255 ) );
+            gc.Clear( aRect );
+        }
+        else if ( Window().DisplayMode() == EColor16MA )
+        {
+            gc.SetDrawMode( CGraphicsContext::EDrawModeWriteAlpha );
+            gc.SetBrushColor( TRgb::Color16MA( 0 ) );
+            gc.Clear( aRect );
+        }
     }
     else
     {