238 } |
238 } |
239 else |
239 else |
240 { |
240 { |
241 iDrive = static_cast<TDriveNumber>(0); //Doesn't matter |
241 iDrive = static_cast<TDriveNumber>(0); //Doesn't matter |
242 } |
242 } |
243 TInt includedMedias = AknCommonDialogsDynMem::EMemoryTypeMMCExternal | |
243 TInt includedMedias(0); |
244 AknCommonDialogsDynMem::EMemoryTypeInternalMassStorage; |
244 CGSCamcorderPlugin* parent = static_cast<CGSCamcorderPlugin*> |
|
245 ( AppUi->View( KGSCamcorderGSPluginUid ) ); |
|
246 TInt driveCount(0); |
|
247 if( !parent->IntegerSettingValue(ECamSettingItemRemovePhoneMemoryUsage) ) |
|
248 { |
|
249 includedMedias |= AknCommonDialogsDynMem::EMemoryTypePhone; |
|
250 driveCount++; |
|
251 } |
|
252 |
|
253 TInt drive(0); |
|
254 TUint driveStatus(0); |
|
255 TInt err(0); |
|
256 err = DriveInfo::GetDefaultDrive( DriveInfo::EDefaultMassStorage, drive ); |
|
257 if( err == KErrNone ) |
|
258 { |
|
259 err = DriveInfo::GetDriveStatus( CCoeEnv::Static()->FsSession(), |
|
260 drive, |
|
261 driveStatus ); |
|
262 if( err == KErrNone ) |
|
263 { |
|
264 if( ( driveStatus & DriveInfo::EDrivePresent) == DriveInfo::EDrivePresent ) |
|
265 { |
|
266 includedMedias |= AknCommonDialogsDynMem::EMemoryTypeInternalMassStorage; |
|
267 driveCount++; |
|
268 } |
|
269 } |
|
270 } |
|
271 |
|
272 err = DriveInfo::GetDefaultDrive( DriveInfo::EDefaultRemovableMassStorage, drive ); |
|
273 if( err == KErrNone ) |
|
274 { |
|
275 err = DriveInfo::GetDriveStatus( CCoeEnv::Static()->FsSession(), |
|
276 drive, |
|
277 driveStatus ); |
|
278 if( err == KErrNone ) |
|
279 { |
|
280 if( ( driveStatus & DriveInfo::EDrivePresent) == DriveInfo::EDrivePresent ) |
|
281 { |
|
282 includedMedias |= AknCommonDialogsDynMem::EMemoryTypeMMCExternalInDevice; |
|
283 driveCount++; |
|
284 } |
|
285 } |
|
286 } |
245 settingItem = new ( ELeave ) |
287 settingItem = new ( ELeave ) |
246 CAknMemorySelectionSettingItemMultiDrive( |
288 CAknMemorySelectionSettingItemMultiDrive( |
247 aIdentifier, |
289 aIdentifier, |
248 iDrive |
290 iDrive |
249 ); |
291 ); |
250 static_cast<CAknMemorySelectionSettingItemMultiDrive*>(settingItem) |
292 static_cast<CAknMemorySelectionSettingItemMultiDrive*>(settingItem) |
251 ->SetIncludedMediasL(includedMedias); |
293 ->SetIncludedMediasL(includedMedias); |
|
294 if( driveCount <= 1 ) |
|
295 { |
|
296 settingItem->SetHidden( ETrue ); |
|
297 } |
252 break; |
298 break; |
253 } |
299 } |
254 case ECamSettingItemVideoNameBaseType: |
300 case ECamSettingItemVideoNameBaseType: |
255 { |
301 { |
256 if ( parent ) |
302 if ( parent ) |