uifw/EikStd/coctlsrc/akndoublespanscrollindicatoritem.cpp
changeset 0 2f259fa3e83a
child 4 8ca85d2f0db7
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/uifw/EikStd/coctlsrc/akndoublespanscrollindicatoritem.cpp	Tue Feb 02 01:00:49 2010 +0200
@@ -0,0 +1,115 @@
+/*
+* Copyright (c) 2004 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:  Indicator item for double span scroll bar.
+*
+*
+*/
+
+
+#include "AknDoubleSpanScrollIndicatorItem.h"
+#include <aknconsts.h>
+#include <AknUtils.h>
+#include <AknsDrawUtils.h>
+#include <aknappui.h>
+#include <aknlayoutscalable_avkon.cdl.h>
+
+CAknDoubleSpanScrollIndicatorItem* CAknDoubleSpanScrollIndicatorItem::NewL(TBool aRotated,
+       TAknsItemID aTopItem,
+        TInt        aTopItemBitmapId,
+        TInt        aTopItemMaskId,
+        TAknsItemID aMiddleItem,
+        TInt        aMiddleItemBitmapId,
+        TInt        aMiddleItemMaskId,
+        TAknsItemID aBottomItem,
+        TInt        aBottomItemBitmapId,
+        TInt        aBottomItemMaskId)
+    {
+    CAknDoubleSpanScrollIndicatorItem* self = new (ELeave) CAknDoubleSpanScrollIndicatorItem();
+    CleanupStack::PushL(self);
+    self->ConstructL(aRotated,
+        aTopItem,
+        aTopItemBitmapId,
+        aTopItemMaskId,
+        aMiddleItem,
+        aMiddleItemBitmapId,
+        aMiddleItemMaskId,
+        aBottomItem,
+        aBottomItemBitmapId,
+        aBottomItemMaskId);
+    CleanupStack::Pop();
+    return self;
+    }
+
+CAknDoubleSpanScrollIndicatorItem* CAknDoubleSpanScrollIndicatorItem::NewL()
+    {
+    CAknDoubleSpanScrollIndicatorItem* self
+        = new ( ELeave ) CAknDoubleSpanScrollIndicatorItem;
+
+    return self;
+    }
+
+CAknDoubleSpanScrollIndicatorItem::CAknDoubleSpanScrollIndicatorItem()
+    {
+    }
+
+CAknDoubleSpanScrollIndicatorItem::~CAknDoubleSpanScrollIndicatorItem()
+    {
+    }
+
+void CAknDoubleSpanScrollIndicatorItem::ConstructL(TBool /*aRotated*/,
+        TAknsItemID aTopItem,
+        TInt        /*aTopItemBitmapId*/,
+        TInt        /*aTopItemMaskId*/,
+        TAknsItemID aMiddleItem,
+        TInt        /*aMiddleItemBitmapId*/,
+        TInt        /*aMiddleItemMaskId*/,
+        TAknsItemID aBottomItem,
+        TInt        /*aBottomItemBitmapId*/,
+        TInt        /*aBottomItemMaskId*/)
+    {
+    MAknsSkinInstance* skin = AknsUtils::SkinInstance();
+    iTopId = aTopItem;
+    iMidId = aMiddleItem;
+    iBottomId = aBottomItem;
+    }
+
+void CAknDoubleSpanScrollIndicatorItem::CreateSkinnedBitmapAndMaskL(MAknsSkinInstance* aInstance,
+    const TAknsItemID& aID,
+    CFbsBitmap*& aBitmap,
+    CFbsBitmap*& aMask,
+    TBool /*aRotated*/)
+    {
+    CFbsBitmap* skinnedBitmap = NULL;
+    CFbsBitmap* skinnedMask = NULL;
+
+    // note, real fallback icons are not (yet) available in avkon icon file.
+    TRAP_IGNORE(AknsUtils::CreateIconL( aInstance, aID, skinnedBitmap, skinnedMask, KNullDesC, -1, -1 ));
+
+    if(!skinnedBitmap)
+        {
+        AknsUtils::CreateIconL( aInstance, aID, skinnedBitmap, KNullDesC, -1 );
+        }
+
+    aBitmap = skinnedBitmap;
+    aMask = skinnedMask;
+
+    }
+
+CFbsBitmap* CAknDoubleSpanScrollIndicatorItem::CreateBitmapL(CFbsBitmap* /*aSourceBitmap*/, TBool /*aRotated*/)
+    {
+   
+
+    return NULL;
+    }
+