382 void CGlxGridViewContainer::CreateHgGridWidgetL() |
382 void CGlxGridViewContainer::CreateHgGridWidgetL() |
383 { |
383 { |
384 TRACER("CGlxGridViewContainer::CreateHgGridWidgetL()"); |
384 TRACER("CGlxGridViewContainer::CreateHgGridWidgetL()"); |
385 |
385 |
386 TInt mediaCount = iMediaList->Count(); |
386 TInt mediaCount = iMediaList->Count(); |
|
387 GLX_DEBUG2("GlxGrid: CHgGrid::CreateHgGridWidgetL() " |
|
388 "mediaCount(%d)", mediaCount); |
387 if (!iHgGrid) |
389 if (!iHgGrid) |
388 { |
390 { |
389 TSize tnSize = CHgGrid::PreferredImageSize(); |
391 iHgGridImageSize = CHgGrid::PreferredImageSize(); |
390 GLX_DEBUG3("GlxGrid: CHgGrid::PreferredImageSize() w(%d) h(%d)", |
392 GLX_DEBUG3("GlxGrid: CHgGrid::PreferredImageSize() w(%d) h(%d)", |
391 tnSize.iWidth, tnSize.iHeight); |
393 iHgGridImageSize.iWidth, iHgGridImageSize.iHeight); |
392 TFileName resFile(KDC_APP_BITMAP_DIR); |
394 iIconsFileName.Append(KDC_APP_BITMAP_DIR); |
393 resFile.Append(KGlxIconsFilename); |
395 iIconsFileName.Append(KGlxIconsFilename); |
394 |
396 |
395 CFbsBitmap* bitmap = NULL; |
|
396 CFbsBitmap* mask = NULL; |
|
397 AknsUtils::CreateIconLC(AknsUtils::SkinInstance(), KAknsIIDNone, |
|
398 bitmap, mask, resFile, EMbmGlxiconsQgn_prop_image_notcreated, |
|
399 EMbmGlxiconsQgn_prop_image_notcreated_mask); |
|
400 __ASSERT_DEBUG(bitmap, Panic(EGlxPanicNullPointer)); |
|
401 __ASSERT_DEBUG(mask, Panic(EGlxPanicNullPointer)); |
|
402 |
|
403 AknIconUtils::SetSize(bitmap, CHgGrid::PreferredImageSize(), |
|
404 EAspectRatioPreservedAndUnusedSpaceRemoved); |
|
405 AknIconUtils::SetSize(mask, CHgGrid::PreferredImageSize(), |
|
406 EAspectRatioPreservedAndUnusedSpaceRemoved); |
|
407 |
|
408 // Create Hg grid object |
397 // Create Hg grid object |
409 iHgGrid = CHgGrid::NewL(GetHgGridRect(), mediaCount, CGulIcon::NewL( |
398 if (mediaCount) |
410 bitmap, mask)); |
399 { |
411 CleanupStack::Pop(mask); |
400 CFbsBitmap* bitmap = NULL; |
412 CleanupStack::Pop(bitmap); |
401 CFbsBitmap* mask = NULL; |
|
402 AknsUtils::CreateIconLC(AknsUtils::SkinInstance(), KAknsIIDNone, |
|
403 bitmap, mask, iIconsFileName, |
|
404 EMbmGlxiconsQgn_prop_image_notcreated, |
|
405 EMbmGlxiconsQgn_prop_image_notcreated_mask); |
|
406 __ASSERT_DEBUG(bitmap, Panic(EGlxPanicNullPointer)); |
|
407 __ASSERT_DEBUG(mask, Panic(EGlxPanicNullPointer)); |
|
408 |
|
409 AknIconUtils::SetSize(bitmap, CHgGrid::PreferredImageSize(), |
|
410 EAspectRatioPreservedAndUnusedSpaceRemoved); |
|
411 AknIconUtils::SetSize(mask, CHgGrid::PreferredImageSize(), |
|
412 EAspectRatioPreservedAndUnusedSpaceRemoved); |
|
413 |
|
414 iHgGrid = CHgGrid::NewL(GetHgGridRect(), mediaCount, |
|
415 CGulIcon::NewL(bitmap, mask)); |
|
416 CleanupStack::Pop(mask); |
|
417 CleanupStack::Pop(bitmap); |
|
418 |
|
419 for (TInt index=0; index<mediaCount; index++) |
|
420 { |
|
421 SetIconsL(index); |
|
422 } |
|
423 } |
|
424 else |
|
425 { |
|
426 iHgGrid = CHgGrid::NewL(GetHgGridRect(), mediaCount); |
|
427 } |
413 } |
428 } |
414 |
429 |
415 // Setting to MopParent to update background skin |
430 // Setting to MopParent to update background skin |
416 iHgGrid->SetMopParent(this); |
431 iHgGrid->SetMopParent(this); |
417 // Setting Selction observer for getting callback on key event change |
432 // Setting Selction observer for getting callback on key event change |
463 // --------------------------------------------------------------------------- |
478 // --------------------------------------------------------------------------- |
464 // |
479 // |
465 void CGlxGridViewContainer::CreateGridL() |
480 void CGlxGridViewContainer::CreateGridL() |
466 { |
481 { |
467 TRACER("CGlxGridViewContainer::CreateGridL()"); |
482 TRACER("CGlxGridViewContainer::CreateGridL()"); |
|
483 #ifdef _DEBUG |
|
484 TTime startTime; |
|
485 GLX_LOG_INFO("CGlxGridViewContainer::CreateGridL(+)"); |
|
486 startTime.HomeTime(); |
|
487 #endif |
468 // Set the Grid thumbnail context and iterator |
488 // Set the Grid thumbnail context and iterator |
469 SetGridThumbnailContextL(); |
489 SetGridThumbnailContextL(); |
470 // Create HG Grid widget |
490 // Create HG Grid widget |
471 CreateHgGridWidgetL(); |
491 CreateHgGridWidgetL(); |
472 // Create an observer and pass MediaList and HGGrid objects |
492 // Create an observer and pass MediaList and HGGrid objects |
473 CreateGridMediaListObserverL(); |
493 CreateGridMediaListObserverL(); |
474 // Create Grid once again after returning from FS as No calls for handleItem added. |
494 // Create Grid once again after returning from FS as No calls for handleItem added. |
475 CreateGridAfterFSDeactivatedL(); |
495 CreateGridAfterFSDeactivatedL(); |
|
496 #ifdef _DEBUG |
|
497 TTime stopTime; |
|
498 stopTime.HomeTime(); |
|
499 GLX_DEBUG2("CGlxGridViewContainer::CreateGridL(-) took <%d> us", |
|
500 (TInt)stopTime.MicroSecondsFrom(startTime).Int64()); |
|
501 #endif |
476 } |
502 } |
477 |
503 |
478 // --------------------------------------------------------------------------- |
504 // --------------------------------------------------------------------------- |
479 // SetGridThumbnailContextL |
505 // SetGridThumbnailContextL |
480 // --------------------------------------------------------------------------- |
506 // --------------------------------------------------------------------------- |
554 // |
571 // |
555 void CGlxGridViewContainer::SetIconsL(TInt index) |
572 void CGlxGridViewContainer::SetIconsL(TInt index) |
556 { |
573 { |
557 TRACER("CGlxGridViewContainer::SetIconsL()"); |
574 TRACER("CGlxGridViewContainer::SetIconsL()"); |
558 const TGlxMedia& item = iMediaList->Item(index); |
575 const TGlxMedia& item = iMediaList->Item(index); |
559 TSize setSize = CHgGrid::PreferredImageSize(); |
|
560 TFileName resFile(KDC_APP_BITMAP_DIR); |
|
561 resFile.Append(KGlxIconsFilename); |
|
562 TIconInfo icon; |
|
563 TInt tnError = GlxErrorManager::HasAttributeErrorL( |
576 TInt tnError = GlxErrorManager::HasAttributeErrorL( |
564 item.Properties(), KGlxMediaIdThumbnail ); |
577 item.Properties(), KGlxMediaIdThumbnail ); |
565 |
578 |
566 const CGlxThumbnailAttribute* qualityTn = item.ThumbnailAttribute( iQualityTnAttrib ); |
579 const CGlxThumbnailAttribute* qualityTn = item.ThumbnailAttribute( iQualityTnAttrib ); |
567 const CGlxThumbnailAttribute* speedTn = item.ThumbnailAttribute( iSpeedTnAttrib ); |
580 const CGlxThumbnailAttribute* speedTn = item.ThumbnailAttribute( iSpeedTnAttrib ); |
598 GLX_LOG_INFO2("CGlxGridViewContainer::SetIconsL - image_defaultthumbnail tnError(%d), i(%d)", |
611 GLX_LOG_INFO2("CGlxGridViewContainer::SetIconsL - image_defaultthumbnail tnError(%d), i(%d)", |
599 tnError, index); |
612 tnError, index); |
600 CFbsBitmap* bitmap = NULL; |
613 CFbsBitmap* bitmap = NULL; |
601 CFbsBitmap* mask = NULL; |
614 CFbsBitmap* mask = NULL; |
602 AknsUtils::CreateIconLC(AknsUtils::SkinInstance(), KAknsIIDNone, |
615 AknsUtils::CreateIconLC(AknsUtils::SkinInstance(), KAknsIIDNone, |
603 bitmap, mask, resFile, EMbmGlxiconsQgn_prop_image_notcreated, |
616 bitmap, mask, iIconsFileName, EMbmGlxiconsQgn_prop_image_notcreated, |
604 EMbmGlxiconsQgn_prop_image_notcreated_mask); |
617 EMbmGlxiconsQgn_prop_image_notcreated_mask); |
605 __ASSERT_DEBUG(bitmap, Panic(EGlxPanicNullPointer)); |
618 __ASSERT_DEBUG(bitmap, Panic(EGlxPanicNullPointer)); |
606 __ASSERT_DEBUG(mask, Panic(EGlxPanicNullPointer)); |
619 __ASSERT_DEBUG(mask, Panic(EGlxPanicNullPointer)); |
607 |
620 |
608 AknIconUtils::SetSize(bitmap, CHgGrid::PreferredImageSize(), |
621 AknIconUtils::SetSize(bitmap, iHgGridImageSize, |
609 EAspectRatioPreservedAndUnusedSpaceRemoved); |
622 EAspectRatioPreservedAndUnusedSpaceRemoved); |
610 AknIconUtils::SetSize(mask, CHgGrid::PreferredImageSize(), |
623 AknIconUtils::SetSize(mask, iHgGridImageSize, |
611 EAspectRatioPreservedAndUnusedSpaceRemoved); |
624 EAspectRatioPreservedAndUnusedSpaceRemoved); |
612 |
625 |
613 iHgGrid->ItemL(index).SetIcon(CGulIcon::NewL(bitmap, mask)); |
626 iHgGrid->ItemL(index).SetIcon(CGulIcon::NewL(bitmap, mask)); |
614 CleanupStack::Pop(mask); |
627 CleanupStack::Pop(mask); |
615 CleanupStack::Pop(bitmap); |
628 CleanupStack::Pop(bitmap); |
619 GLX_LOG_INFO2("CGlxGridViewContainer::SetIconsL - image_corrupted tnError(%d), i(%d)", |
632 GLX_LOG_INFO2("CGlxGridViewContainer::SetIconsL - image_corrupted tnError(%d), i(%d)", |
620 tnError, index); |
633 tnError, index); |
621 CFbsBitmap* bitmap = NULL; |
634 CFbsBitmap* bitmap = NULL; |
622 CFbsBitmap* mask = NULL; |
635 CFbsBitmap* mask = NULL; |
623 AknsUtils::CreateIconLC(AknsUtils::SkinInstance(), KAknsIIDNone, |
636 AknsUtils::CreateIconLC(AknsUtils::SkinInstance(), KAknsIIDNone, |
624 bitmap, mask, resFile, EMbmGlxiconsQgn_prop_image_corrupted, |
637 bitmap, mask, iIconsFileName, EMbmGlxiconsQgn_prop_image_corrupted, |
625 EMbmGlxiconsQgn_prop_image_corrupted_mask); |
638 EMbmGlxiconsQgn_prop_image_corrupted_mask); |
626 __ASSERT_DEBUG(bitmap, Panic(EGlxPanicNullPointer)); |
639 __ASSERT_DEBUG(bitmap, Panic(EGlxPanicNullPointer)); |
627 __ASSERT_DEBUG(mask, Panic(EGlxPanicNullPointer)); |
640 __ASSERT_DEBUG(mask, Panic(EGlxPanicNullPointer)); |
628 |
641 |
629 AknIconUtils::SetSize(bitmap, CHgGrid::PreferredImageSize(), |
642 AknIconUtils::SetSize(bitmap, iHgGridImageSize, |
630 EAspectRatioPreservedAndUnusedSpaceRemoved); |
643 EAspectRatioPreservedAndUnusedSpaceRemoved); |
631 AknIconUtils::SetSize(mask, CHgGrid::PreferredImageSize(), |
644 AknIconUtils::SetSize(mask, iHgGridImageSize, |
632 EAspectRatioPreservedAndUnusedSpaceRemoved); |
645 EAspectRatioPreservedAndUnusedSpaceRemoved); |
633 |
646 |
634 iHgGrid->ItemL(index).SetIcon(CGulIcon::NewL(bitmap, mask)); |
647 iHgGrid->ItemL(index).SetIcon(CGulIcon::NewL(bitmap, mask)); |
635 CleanupStack::Pop(mask); |
648 CleanupStack::Pop(mask); |
636 CleanupStack::Pop(bitmap); |
649 CleanupStack::Pop(bitmap); |