camerauis/cameraapp/generic/common/src/CamCaptureSetupListBoxModel.cpp
changeset 19 d9aefe59d544
parent 3 8b2d6d0384b0
child 21 fa6d9f75d6a6
child 28 3075d9b614e6
--- a/camerauis/cameraapp/generic/common/src/CamCaptureSetupListBoxModel.cpp	Tue Feb 02 00:01:39 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,331 +0,0 @@
-/*
-* Copyright (c) 2007 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:  A model class for CCamCaptureSetupListBox*
-*/
-
-
-// INCLUDE FILES
-#include <barsread.h>
-#include <eikenv.h>
-
-#ifndef CAMERAAPP_PLUGIN_BUILD
-    #include <cameraapp.rsg>
-    #include <vgacamsettings.rsg>
-#else
-    #include <gscamerapluginrsc.rsg>
-#endif //CAMERAAPP_PLUGIN_BUILD
-
-#include "CamProductSpecificSettings.hrh"
-#include "CamUtility.h"
-#include "camlayoututils.h"
-#include "CamCaptureSetupListItem.h"
-#include "CamCaptureSetupListBoxModel.h"
-#include "CameraUiConfigManager.h"
-
-#include <aknlayoutscalable_apps.cdl.h>
-
-
-// ================= MEMBER FUNCTIONS =======================
-
-// -----------------------------------------------------------------------------
-// CCamCaptureSetupListBoxModel::NewLC
-// Two-phased constructor.
-// -----------------------------------------------------------------------------
-//
-CCamCaptureSetupListBoxModel* CCamCaptureSetupListBoxModel::NewLC( 
-#ifndef CAMERAAPP_PLUGIN_BUILD
-                                                                  CCamAppController& aController,
-#else // location setting will be moved to the plugin
-                                                                  MCamAppController& aController,
-#endif
-        														   TInt aArrayResourceId,
-        														   TInt aSettingItem,
-                                                    			   TBool aShootingModeListBox,
-                                                    			   TBool aLocationSettingListBox,
-                                                                   TRect aListBoxRect
-                                                    			   )
-    {
-    CCamCaptureSetupListBoxModel* self = new( ELeave ) CCamCaptureSetupListBoxModel( aController,
-    																				 aShootingModeListBox,
-    																				 aLocationSettingListBox
-    																				 );
-
-    CleanupStack::PushL( self );
-    self->ConstructL( aArrayResourceId, aSettingItem, aListBoxRect );
-    return self;
-    }
-
-// ---------------------------------------------------------------------------
-// CCamCaptureSetupListBoxModel destructor
-// 
-// ---------------------------------------------------------------------------
-//
-CCamCaptureSetupListBoxModel::~CCamCaptureSetupListBoxModel()
-	{
-  PRINT( _L("Camera => ~CCamCaptureSetupListBoxModel") );
-  iItemArray.ResetAndDestroy();
-  iItemArray.Close();
-  PRINT( _L("Camera <= ~CCamCaptureSetupListBoxModel") );
-	}
-
-// ---------------------------------------------------------
-// CCamCaptureSetupListBoxModel::NumberOfItems
-// Returns number of items that are in array
-// ---------------------------------------------------------
-//
-TInt CCamCaptureSetupListBoxModel::NumberOfItems() const
-	{
-	return iItemArray.Count();
-	}
-
-// ---------------------------------------------------------
-// CCamCaptureSetupListBoxModel::MatchableTextArray
-// Returns null, no support for incremental matching
-// ---------------------------------------------------------
-//
-const MDesCArray* CCamCaptureSetupListBoxModel::MatchableTextArray() const
-	{
-    return NULL;
-	}
-
-// ---------------------------------------------------------
-// CCamCaptureSetupListBoxModel::ItemText
-// Returns a pointer to the item text
-// ---------------------------------------------------------
-//
-TPtrC CCamCaptureSetupListBoxModel::ItemText( TInt aItemIndex ) const
-    {
-    return iItemArray[ aItemIndex ]->ItemText();
-    }
-
-// ---------------------------------------------------------
-// CCamCaptureSetupListBoxModel::ItemValue
-// Returns the value id of the specified item
-// ---------------------------------------------------------
-//
-TInt CCamCaptureSetupListBoxModel::ItemValue( TInt aItemIndex ) const 
-    {
-    return iItemArray[aItemIndex]->ItemValue();
-    }
-
-// ---------------------------------------------------------
-// CCamCaptureSetupListBoxModel::Bitmap
-// Returns a pointer to the bitmap of the specified item
-// ---------------------------------------------------------
-//
-CFbsBitmap* CCamCaptureSetupListBoxModel::Bitmap( TInt aItemIndex ) const
-    {
-    return iItemArray[ aItemIndex ]->Bitmap();
-    }
-
-// ---------------------------------------------------------
-// CCamCaptureSetupListBoxModel::BitmapMask
-// Returns a pointer to the mask of the specified item
-// ---------------------------------------------------------
-//
-CFbsBitmap* CCamCaptureSetupListBoxModel::BitmapMask( TInt aItemIndex ) const
-    {
-    return iItemArray[ aItemIndex ]->BitmapMask();
-    }
-
-// ---------------------------------------------------------
-// CCamCaptureSetupListBoxModel::ItemIndexFromValueId
-// Returns the index of the item with a matching value id
-// ---------------------------------------------------------
-//
-TInt CCamCaptureSetupListBoxModel::ValueIndex( TInt aValueId ) const
-    {
-    return iItemArray.Find( aValueId, CCamInfoListboxItemBase::EqualIds );
-    }
-
-// ---------------------------------------------------------
-// CCamCaptureSetupListBoxModel::ShootingModeListBox
-// Returns whether the model represents a shooting mode listbox
-// ---------------------------------------------------------
-//
-TBool CCamCaptureSetupListBoxModel::ShootingModeListBox() const
-    {
-    return iShootingModeListBox;
-    }
-    
-
-TAknLayoutRect CCamCaptureSetupListBoxModel::IconLayoutData() const
-    {
-    return iIconLayoutData;
-    }
-TAknLayoutRect CCamCaptureSetupListBoxModel::RadioButtonLayoutData() const
-    {
-    return iRadioButtonLayoutData;
-    }
-TAknLayoutText CCamCaptureSetupListBoxModel::TextLayoutData() const
-    {
-    return iTextLayoutData;
-    }
-TAknLayoutRect CCamCaptureSetupListBoxModel::ListItemLayoutData() const
-    {
-    return iListItemLayoutData;
-    }
-// ---------------------------------------------------------------------------
-// CCamCaptureSetupListBoxModel::CCamCaptureSetupListBoxModel
-// C++ constructor
-// ---------------------------------------------------------------------------
-//
-
-CCamCaptureSetupListBoxModel::CCamCaptureSetupListBoxModel( 
-#ifndef CAMERAAPP_PLUGIN_BUILD
-                                                            CCamAppController& aController,
-#else // location setting will be moved to the plugin
-                                                            MCamAppController& aController,
-#endif
-															TBool aShootingModeListBox,
-															TBool aLocationSettingListBox
-															)
-: iController( aController ), iShootingModeListBox ( aShootingModeListBox ),
-  iLocationSettingListBox ( aLocationSettingListBox )
-	{
-	}
-
-// ---------------------------------------------------------------------------
-// CCamCaptureSetupListBoxModel::ConstructL
-// 2nd phase construction
-// ---------------------------------------------------------------------------
-//
-void CCamCaptureSetupListBoxModel::ConstructL( TInt aArrayResourceId, TInt aSettingItem, TRect aListBoxRect )
-	{
-    ReadLayoutData( aListBoxRect ); 
-        
-    // create array from resource
-    TResourceReader reader;
-    CEikonEnv::Static()->CreateResourceReaderLC( reader, aArrayResourceId );
-    const TInt count = reader.ReadInt16();
-    
-#ifndef CAMERAAPP_PLUGIN_BUILD
-    iSupportedFlashModes = iController.SupportedFlashModes();
-    iSupportedWBModes = iController.SupportedWBModes();
-#endif //CAMERAAPP_PLUGIN_BUILD
-
-  // for each entry in the resource array, create a new list item
-  for ( TInt i = 0; i < count; i++ )
-    {
-    CCamCaptureSetupListItem* listItem = 
-      CCamCaptureSetupListItem::NewLC( reader, iIconLayoutData );
-                               
-        if( SettingValueSupportedL( listItem, aSettingItem ) )
-        	{
-        	iItemArray.AppendL( listItem );
-        	}
-        
-        CleanupStack::Pop( listItem );
-        }    
-    CleanupStack::PopAndDestroy(); // reader
-	}
-
-// ---------------------------------------------------------------------------
-// CCamCaptureSetupListBoxModel::ReadLayoutData
-// Read in layout data from resource
-// ---------------------------------------------------------------------------
-//
-void CCamCaptureSetupListBoxModel::ReadLayoutData( TRect aListBoxRect )
-    {
-    if ( CamUtility::IsNhdDevice() )
-        { 
-        iIconLayoutData.LayoutRect( aListBoxRect, 
-                          AknLayoutScalable_Apps::cset_list_set_pane_g3( 0 ) );
-        iRadioButtonLayoutData.LayoutRect( aListBoxRect, 
-                          AknLayoutScalable_Apps::cset_list_set_pane_g1( 0 ) );
-        iListItemLayoutData.LayoutRect( aListBoxRect, 
-                          AknLayoutScalable_Apps::cset_list_set_pane( 0 ) );
-        }
-    else
-        {   
-        TRect mnPane;
-        AknLayoutUtils::LayoutMetricsRect( AknLayoutUtils::EMainPane, mnPane );
-        TAknLayoutRect listLayoutRect;
-        listLayoutRect.LayoutRect( mnPane, 
-                    AknLayoutScalable_Apps::main_cset6_listscroll_pane( 4 ) );  
-        iIconLayoutData.LayoutRect( listLayoutRect.Rect(), 
-                    AknLayoutScalable_Apps::cset_list_set_pane_g3_copy1( 0 ) );
-        iRadioButtonLayoutData.LayoutRect( listLayoutRect.Rect(), 
-                    AknLayoutScalable_Apps::cset_list_set_pane_g1_copy1( 0 ) );
-        TAknWindowLineLayout l =  AknLayoutScalable_Apps::cset_list_set_pane_copy1( 0 ); 
-        if( !l.iH )
-            {
-            l.iH = 73; // TODO Temporarily defined!
-            }
-        iListItemLayoutData.LayoutRect( listLayoutRect.Rect(), l );
-        }
-    }
-
-// ---------------------------------------------------------------------------
-// CCamCaptureSetupListBoxModel::SettingValueSupportedL
-// ---------------------------------------------------------------------------
-//
-TBool 
-CCamCaptureSetupListBoxModel::SettingValueSupportedL( CCamInfoListboxItemBase* aItem, TInt aSettingItem )
-  {
-  TBool supported = EFalse;
-  TBool checkConfiguredItems = ETrue;
-  TInt val = aItem->ItemValue();
-  
-  CCameraUiConfigManager* dynamicSettings = iController.UiConfigManagerPtr();
-  RArray<TInt> supportedItems;
-  CleanupClosePushL( supportedItems );
-  supportedItems.Reset();
-
-  // just for flash to start with
-  if( aSettingItem == ECamSettingItemDynamicPhotoFlash )
-    {
-#ifndef CAMERAAPP_PLUGIN_BUILD
-    if ( dynamicSettings )
-        {
-        dynamicSettings->SupportedFlashModeSettingsL( supportedItems );
-        }
-#endif //CAMERAAPP_PLUGIN_BUILD
-		}
-    else if( ECamSettingItemDynamicPhotoWhiteBalance == aSettingItem ||
-             ECamSettingItemDynamicVideoWhiteBalance == aSettingItem )
-		{
-#ifndef CAMERAAPP_PLUGIN_BUILD
-        if ( dynamicSettings )
-            {
-            dynamicSettings->SupportedWhiteBalanceSettingsL( supportedItems );
-            }
-#endif //CAMERAAPP_PLUGIN_BUILD
-	    }
-    else if ( ECamSettingItemDynamicPhotoColourFilter == aSettingItem ||
-              ECamSettingItemDynamicVideoColourFilter == aSettingItem )
-        {
-#ifndef CAMERAAPP_PLUGIN_BUILD
-        if ( dynamicSettings )
-            {
-            dynamicSettings->SupportedColorToneSettingsL( supportedItems );
-            }
-#endif //CAMERAAPP_PLUGIN_BUILD
-        }
-	else
-		{
-		checkConfiguredItems = EFalse;
-		supported = ETrue;
-		}
-  
-    if ( checkConfiguredItems && supportedItems.Count() > 0 )
-        {
-        supported = KErrNotFound != supportedItems.Find( val );
-        }
-  
-    CleanupStack::PopAndDestroy( &supportedItems );
-	return supported;
-	}
-//  End of File  
-