phoneuis/BubbleManager/Src/BMCallStatusIndiSmall.cpp
changeset 0 5f000ab63145
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/phoneuis/BubbleManager/Src/BMCallStatusIndiSmall.cpp	Mon Jan 18 20:18:27 2010 +0200
@@ -0,0 +1,133 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  Small call status indicator
+*
+*/
+
+
+#include "BMCallStatusIndiSmall.h"
+#include "BMBubbleImageManager.h"
+#include "BMBubbleHeader.h"
+
+// ---------------------------------------------------------------------------
+// C++ constructor
+// ---------------------------------------------------------------------------
+//
+CBubbleCallStatusIndiSmall::CBubbleCallStatusIndiSmall( 
+    CBubbleImageManager& aImageManager ) :
+    CBubbleCallStatusIndi( aImageManager )
+    {
+    }
+
+// ---------------------------------------------------------------------------
+// NewL
+// ---------------------------------------------------------------------------
+//
+CBubbleCallStatusIndiSmall* CBubbleCallStatusIndiSmall::NewL(
+        CBubbleImageManager& aImageManager )
+    {
+    CBubbleCallStatusIndiSmall* self = 
+        new( ELeave ) CBubbleCallStatusIndiSmall( aImageManager );
+    CleanupStack::PushL( self );
+    self->ConstructL();
+    CleanupStack::Pop( self );
+    return self;
+    }
+
+
+// ---------------------------------------------------------------------------
+// Destructor
+// ---------------------------------------------------------------------------
+//
+CBubbleCallStatusIndiSmall::~CBubbleCallStatusIndiSmall()
+    {
+    }
+
+// ---------------------------------------------------------------------------
+// SetImageAndMask
+// ---------------------------------------------------------------------------
+//
+void CBubbleCallStatusIndiSmall::SetImageAndMask()
+    {
+    TInt image = KErrNotFound;  
+    TInt mask = KErrNotFound; 
+    
+    switch ( iCallState )
+        {
+        case CBubbleManager::EOutgoing:
+        case CBubbleManager::EActive:
+            if ( iCallFlags&CBubbleManager::EVideo )
+                {
+                image = EQgn_indi_call_video_callsta_1;
+                mask = EQgn_indi_call_video_callsta_1_mask;
+                }   
+            else if ( iCallFlags&CBubbleManager::EVoIPCall )
+                {
+                image = EQgn_indi_call_voip_active;
+                mask = EQgn_indi_call_voip_active_mask;
+                }
+            else
+                {
+                image = EQgn_indi_call_active;
+                mask = EQgn_indi_call_active_mask;
+                }
+            break;
+        case CBubbleManager::EAlertToDisconnected:
+        case CBubbleManager::EDisconnected:
+            if ( iCallFlags&CBubbleManager::EVideo )
+                {
+                image = EQgn_indi_call_video_callsta_disconn;
+                mask = EQgn_indi_call_video_callsta_disconn_mask;
+                }   
+            else if ( iCallFlags&CBubbleManager::EVoIPCall )
+                {
+                image = EQgn_indi_call_voip_disconn;
+                mask = EQgn_indi_call_voip_disconn_mask;
+                }    
+            else
+                {
+                image = EQgn_indi_call_disconn;
+                mask = EQgn_indi_call_disconn_mask;
+                }
+
+            break;
+        case CBubbleManager::EOnHold:
+            if ( iCallFlags&CBubbleManager::EVoIPCall )
+                {
+                image = EQgn_indi_call_voip_held;
+                mask = EQgn_indi_call_voip_held_mask;
+                }
+            else 
+                {
+                image = EQgn_indi_call_held;
+                mask = EQgn_indi_call_held_mask;
+                }
+            break;
+        default:
+            break;
+        }
+    
+    if ( image != KErrNotFound && mask != KErrNotFound )
+        {
+        CEikImage* self = static_cast<CEikImage*>(this);
+        iImageManager.SetBitmapToImage( 
+           self, 
+           (TBMIcons)image, 
+           (TBMIcons)mask );
+        }
+
+    };
+
+// End of file
+