homemedia/homemedia/src/homemediabaselistbox.cpp
branchIOP_Improvements
changeset 40 08b5eae9f9ff
parent 39 6369bfd1b60d
child 41 b4d83ea1d6e2
--- a/homemedia/homemedia/src/homemediabaselistbox.cpp	Mon Nov 01 13:44:24 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,259 +0,0 @@
-/*
-* Copyright (c) 2008 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:      Base listbox class
-*
-*/
-
-
-
-
-
-
-#include <aknViewAppUi.h>
-#include <badesca.h>
-#include <eiklbx.h> 
-#include <homemedia.mbg>
-#include <gulicon.h>
-#include <eikenv.h>
-#include <eikapp.h>
-#include <AknsUtils.h> 
-#include <AknIconUtils.h> 
-#include "homemediaappview.h"
-#include "homemediabaselistbox.h"
-
-//CONSTANTS
-static const TInt KIconGranularity( 3 );
-_LIT( KAknHomeMediaMbmFileName, "\\resource\\apps\\HomeMedia.mif" );
-
-// --------------------------------------------------------------------------
-// CHomeMediaBaseListbox::CHomeMediaBaseListbox()
-// --------------------------------------------------------------------------
-//
-CHomeMediaBaseListbox::CHomeMediaBaseListbox()
-    {
-    // No implementation required
-    }
-
-// --------------------------------------------------------------------------
-// CHomeMediaBaseListbox::~CHomeMediaBaseListbox()
-// --------------------------------------------------------------------------
-//
-CHomeMediaBaseListbox::~CHomeMediaBaseListbox()
-    {
-    delete iListBox;
-    }
-
-// --------------------------------------------------------------------------
-// CHomeMediaBaseListbox::ListBox()
-// --------------------------------------------------------------------------
-//
-CEikListBox& CHomeMediaBaseListbox::ListBox()
-    {
-    return *iListBox;
-    }
-
-// --------------------------------------------------------------------------
-// CHomeMediaBaseListbox::AddColumnL()
-// --------------------------------------------------------------------------
-//
-void CHomeMediaBaseListbox::AddColumnL( TRefByValue<const TDesC> aFmt,... )
-    {
-    // pointer to list of arguments 
-    VA_LIST args;
-    // tells the code where to start the list
-    VA_START(args,aFmt);
-    HBufC* data = HBufC::NewLC(KMaxFileName);
-    // create TOverFlowHandler object in case if there is 
-    // huge descriptor passed here
-    TOverFlowHandler overFlow;
-    // now format descriptor
-    data->Des().AppendFormatList( aFmt , args , &overFlow );
-    // add item to list
-    iListBoxItems->AppendL(*data);
-    CleanupStack::PopAndDestroy(data);
-    // sets pointer to zero
-    VA_END(args);
-    // draw listbox
-    iListBox->HandleItemAdditionL();
-    iListBox->DrawDeferred();
-    }
-
-// --------------------------------------------------------------------------
-// CHomeMediaBaseListbox::SizeChanged()
-// Called by framework when the view size is changed.
-// --------------------------------------------------------------------------
-//
-void CHomeMediaBaseListbox::SizeChanged()
-    {  
-    const TPoint listPosition(0,0);
-    iListBox->SetExtent(listPosition, iListBox->MinimumSize() );
-    }
-
-// --------------------------------------------------------------------------
-// CHomeMediaBaseListbox::OfferKeyEventL()
-// --------------------------------------------------------------------------
-//
-TKeyResponse CHomeMediaBaseListbox::OfferKeyEventL(
-    const TKeyEvent &aKeyEvent,
-    TEventCode aType)
-    {
-    TKeyResponse ret(EKeyWasNotConsumed);
-    if( aType == EEventKey )
-        {
-        if( aKeyEvent.iCode == EKeyUpArrow 
-            || aKeyEvent.iCode == EKeyDownArrow )
-            {
-            ret = iListBox->OfferKeyEventL(aKeyEvent, aType);
-            }
-        } 
-    return ret;
-    }
-
-// --------------------------------------------------------------------------
-// CHomeMediaBaseListbox::CountComponentControls()
-// --------------------------------------------------------------------------
-//
-TInt CHomeMediaBaseListbox::CountComponentControls() const
-    {
-    return 1;
-    }
-
-// --------------------------------------------------------------------------
-// CHomeMediaBaseListbox::ComponentControl()
-// --------------------------------------------------------------------------
-//
-CCoeControl* CHomeMediaBaseListbox::ComponentControl(TInt aIndex) const
-    {
-    CCoeControl* ret = NULL;
-    switch( aIndex )
-        {
-        case 0:
-            ret = iListBox;
-            break;
-        }
-    return ret;
-    }
-
-// --------------------------------------------------------------------------
-// CHomeMediaBaseListbox::BaseConstructL()
-// --------------------------------------------------------------------------
-//
-void CHomeMediaBaseListbox::BaseConstructL( const TRect& aRect 
-                                                ,CEikTextListBox* aListBox )
-    {    
-    CreateWindowL();
-
-    // take the ownership of aListBox
-    iListBox = aListBox;
-    
-    /** This initializes the C-classes of a newly-created @c CEikTextListBox 
-    * from supplied arguments. This function fully constructs the associated 
-    * list box model and item drawer for this list box, and then invokes 
-    * CEikListBox::ConstructL().
-    */
-    iListBox->ConstructL(this);
-    
-    /**
-    * Creates an own window for the list box or draws the list box to an old 
-    * window defined by the container.
-    */
-    iListBox->SetContainerWindowL(*this);
-    
-    // add scrollbars to listbox 
-    iListBox->CreateScrollBarFrameL(ETrue); 
-    
-    /**
-    * Sets the visibility state for both the horizontal and the vertical
-    * scrollbars. This is used when tiling.
-    */
-    iListBox->ScrollBarFrame()->SetScrollBarVisibilityL( 
-        CEikScrollBarFrame::EOff, CEikScrollBarFrame::EOff);
-    
-    // get the pointer to listbox itemTextArray
-    iListBoxItems 
-            = static_cast<CDesCArray*>( iListBox->Model()->ItemTextArray() );
-    
-    //Set icons
-    CAknIconArray* icons = new (ELeave) CAknIconArray( KIconGranularity );
-    CleanupStack::PushL( icons );
-    
-    MAknsSkinInstance* skin = AknsUtils::SkinInstance();
-    TFileName iconsPath( AknIconUtils::AvkonIconFileName( ) );
-
-    TFileName mbmFileName( KAknHomeMediaMbmFileName );
-    TFileName dllName 
-             = CEikonEnv::Static()->EikAppUi()->Application()->AppFullName();
-    TBuf<2> drive = dllName.Left( 2 ); // Drive letter followed by ':' 
-    mbmFileName.Insert( 0, drive );
-
-    // if new static menu item added constant KNumberOfItemsBeforePlugins
-    // has to be changed
-    AppendIconToArrayL( icons, skin,
-                        mbmFileName,
-                        KAknsIIDDefault,
-                        EMbmHomemediaQgn_prop_upnp_browse_home,
-                        EMbmHomemediaQgn_prop_upnp_browse_home_mask );
-
-    AppendIconToArrayL( icons, skin,
-                        mbmFileName,
-                        KAknsIIDDefault,
-                        EMbmHomemediaQgn_prop_upnp_share_sub,
-                        EMbmHomemediaQgn_prop_upnp_share_sub_mask );
-    
-    static_cast<CEikFormattedCellListBox*>(iListBox)->ItemDrawer()->
-                                    FormattedCellData()->SetIconArray(icons);
-    
-    CleanupStack::Pop(icons);
-    
-    // Set the windows size
-    SetRect( aRect );
-    // Activate the window, which makes it ready to be drawn
-    ActivateL();
-    }
-
-// --------------------------------------------------------------------------
-// CHomeMediaBaseListbox::AppendIconToArrayL()
-// --------------------------------------------------------------------------
-//
-void CHomeMediaBaseListbox::AppendIconToArrayL(CAknIconArray* aArray,
-                                               MAknsSkinInstance* aSkin,
-                                               const TDesC& aMbmFile,
-                                               const TAknsItemID& aID,
-                                               TInt aBitmapId,
-                                               TInt aMaskId)
-    {
-    CFbsBitmap* bitmap = NULL;
-    CFbsBitmap* mask = NULL;
-
-    AknsUtils::CreateIconLC(aSkin, aID,
-        bitmap, mask, aMbmFile, aBitmapId, aMaskId);
-
-    CGulIcon* icon = CGulIcon::NewL(bitmap, mask);
-    icon->SetBitmapsOwnedExternally(EFalse);
-
-    // icon now owns the bitmaps, no need to keep on cleanup stack.
-    CleanupStack::Pop(mask);
-    CleanupStack::Pop(bitmap);
-    bitmap = NULL;
-    mask = NULL;
-
-    CleanupStack::PushL(icon);
-
-    aArray->AppendL(icon);
-
-    // aArray now owns the icon, no need to delete.
-    CleanupStack::Pop(icon);
-    }
-
-// End of file