javauis/eswt_akn/org.eclipse.ercp.swt.s60/native/src/swtlistview.cpp
branchRCL_3
changeset 83 26b2b12093af
parent 66 2455ef1f5bbc
equal deleted inserted replaced
77:7cee158cb8cd 83:26b2b12093af
   237         iStylusPopupMarkAll = CSwtMenuItem::NewL(iDisplay, NULL, *iStylusPopupMenu, 0, 0, EAknMarkAll);
   237         iStylusPopupMarkAll = CSwtMenuItem::NewL(iDisplay, NULL, *iStylusPopupMenu, 0, 0, EAknMarkAll);
   238         iStylusPopupMarkAll->SetTextL(iMenuItemMarkAll->Text());
   238         iStylusPopupMarkAll->SetTextL(iMenuItemMarkAll->Text());
   239 
   239 
   240         iStylusPopupUnmarkAll = CSwtMenuItem::NewL(iDisplay, NULL, *iStylusPopupMenu, 1, 0, EAknUnmarkAll);
   240         iStylusPopupUnmarkAll = CSwtMenuItem::NewL(iDisplay, NULL, *iStylusPopupMenu, 1, 0, EAknUnmarkAll);
   241         iStylusPopupUnmarkAll->SetTextL(iMenuItemUnmarkAll->Text());
   241         iStylusPopupUnmarkAll->SetTextL(iMenuItemUnmarkAll->Text());
   242 #endif //RD_SCALABLE_UI_V2
   242 #endif //RD_SCALABLE_UI_V2        
   243     }
   243     }
   244 
   244 
   245     iOldSelectionArray = new(ELeave) CArrayFixFlat<TInt>(2);
   245     iOldSelectionArray = new(ELeave) CArrayFixFlat<TInt>(2);
   246     iSelectionArray = new(ELeave) CArrayFixFlat<TInt>(2);
   246     iSelectionArray = new(ELeave) CArrayFixFlat<TInt>(2);
   247     iGrid->ConstructL(this, gridFlags);
   247     iGrid->ConstructL(this, gridFlags);
   566         CleanupStack::PushL(bmp);
   566         CleanupStack::PushL(bmp);
   567         User::LeaveIfError(bmp->Create(TSize(0, 0), EColor256));
   567         User::LeaveIfError(bmp->Create(TSize(0, 0), EColor256));
   568         ASSERT(bmp);
   568         ASSERT(bmp);
   569         icon = CGulIcon::NewL(bmp);
   569         icon = CGulIcon::NewL(bmp);
   570         CleanupStack::Pop(bmp);   // bmp
   570         CleanupStack::Pop(bmp);   // bmp
       
   571 
       
   572         CFbsBitmap* mask = new(ELeave) CFbsBitmap;
       
   573         CleanupStack::PushL(mask);
       
   574         User::LeaveIfError(mask->Create(TSize(0, 0), EGray2));
       
   575         ASSERT(mask);
       
   576         icon->SetMask(mask);
       
   577         CleanupStack::Pop(mask);   // mask
   571     }
   578     }
   572     return icon;
   579     return icon;
   573 }
   580 }
   574 
   581 
   575 // ---------------------------------------------------------------------------
   582 // ---------------------------------------------------------------------------
   852 
   859 
   853     const MSwtImage* refImg = aImage;
   860     const MSwtImage* refImg = aImage;
   854     const TInt refImgCount = iRefImages.Count();
   861     const TInt refImgCount = iRefImages.Count();
   855     if (refImgCount > aPos)
   862     if (refImgCount > aPos)
   856     {
   863     {
   857         iRefImages.InsertL(refImg, aPos);
   864         iRefImages.Insert(refImg, aPos);
   858     }
   865     }
   859     else
   866     else
   860     {
   867     {
   861         iRefImages.AppendL(refImg);
   868         iRefImages.Append(refImg);
   862     }
   869     }
   863 
   870 
   864 #ifdef DEBUG_CHECK_IMAGES
   871 #ifdef DEBUG_CHECK_IMAGES
   865     CheckRefImages(iRefImages, *(GetIconArray()), iMaxImageSize);
   872     CheckRefImages(iRefImages, *(GetIconArray()), iMaxImageSize);
   866 #endif
   873 #endif
  1433         if (GetGridView()->SelectionIndexes()->Count() == 0)
  1440         if (GetGridView()->SelectionIndexes()->Count() == 0)
  1434         {
  1441         {
  1435             iMenuItemUnmarkAll->SetEnabled(EFalse);
  1442             iMenuItemUnmarkAll->SetEnabled(EFalse);
  1436 #ifdef RD_SCALABLE_UI_V2
  1443 #ifdef RD_SCALABLE_UI_V2
  1437             iStylusPopupUnmarkAll->SetEnabled(EFalse);
  1444             iStylusPopupUnmarkAll->SetEnabled(EFalse);
  1438 #endif //RD_SCALABLE_UI_V2
  1445 #endif //RD_SCALABLE_UI_V2            
  1439         }
  1446         }
  1440         else
  1447         else
  1441         {
  1448         {
  1442             iMenuItemUnmarkAll->SetEnabled(ETrue);
  1449             iMenuItemUnmarkAll->SetEnabled(ETrue);
  1443 #ifdef RD_SCALABLE_UI_V2
  1450 #ifdef RD_SCALABLE_UI_V2
  1444             iStylusPopupUnmarkAll->SetEnabled(ETrue);
  1451             iStylusPopupUnmarkAll->SetEnabled(ETrue);
  1445 #endif //RD_SCALABLE_UI_V2
  1452 #endif //RD_SCALABLE_UI_V2                            
  1446         }
  1453         }
  1447 
  1454 
  1448         if (GetGridView()->SelectionIndexes()->Count() == GetGridModel()->NumberOfItems())
  1455         if (GetGridView()->SelectionIndexes()->Count() == GetGridModel()->NumberOfItems())
  1449         {
  1456         {
  1450             iMenuItemMarkAll->SetEnabled(EFalse);
  1457             iMenuItemMarkAll->SetEnabled(EFalse);
  1451 #ifdef RD_SCALABLE_UI_V2
  1458 #ifdef RD_SCALABLE_UI_V2
  1452             iStylusPopupMarkAll->SetEnabled(EFalse);
  1459             iStylusPopupMarkAll->SetEnabled(EFalse);
  1453 #endif //RD_SCALABLE_UI_V2
  1460 #endif //RD_SCALABLE_UI_V2                        
  1454         }
  1461         }
  1455         else
  1462         else
  1456         {
  1463         {
  1457             iMenuItemMarkAll->SetEnabled(ETrue);
  1464             iMenuItemMarkAll->SetEnabled(ETrue);
  1458 #ifdef RD_SCALABLE_UI_V2
  1465 #ifdef RD_SCALABLE_UI_V2
  1459             iStylusPopupMarkAll->SetEnabled(ETrue);
  1466             iStylusPopupMarkAll->SetEnabled(ETrue);
  1460 #endif //RD_SCALABLE_UI_V2
  1467 #endif //RD_SCALABLE_UI_V2                                    
  1461         }
  1468         }
  1462     }
  1469     }
  1463 }
  1470 }
  1464 
  1471 
  1465 // ---------------------------------------------------------------------------
  1472 // ---------------------------------------------------------------------------
  1544 
  1551 
  1545     if (iStylusPopupMenu)
  1552     if (iStylusPopupMenu)
  1546     {
  1553     {
  1547         iStylusPopupMenu->Dispose();
  1554         iStylusPopupMenu->Dispose();
  1548     }
  1555     }
  1549 #endif //RD_SCALABLE_UI_V2
  1556 #endif //RD_SCALABLE_UI_V2    
  1550 
  1557 
  1551     delete iMarkString;
  1558     delete iMarkString;
  1552     delete iUnmarkString;
  1559     delete iUnmarkString;
  1553 
  1560 
  1554     delete iOldSelectionArray;
  1561     delete iOldSelectionArray;
  3671 #else
  3678 #else
  3672     return EDefaultFocusBackground;
  3679     return EDefaultFocusBackground;
  3673 #endif // RD_JAVA_S60_RELEASE_9_2
  3680 #endif // RD_JAVA_S60_RELEASE_9_2
  3674 }
  3681 }
  3675 
  3682 
  3676 void CSwtListView::PrepareForTraverse()
       
  3677 {
       
  3678     ASSERT(iGrid);
       
  3679     ASSERT(iGrid->View());
       
  3680 
       
  3681 #ifdef RD_JAVA_S60_RELEASE_9_2
       
  3682     // AvKon enables highlight only when key event is recieved.
       
  3683     // When traversing, no key event is sent to AvKon, so we
       
  3684     // have to enable highlight by ourselves.
       
  3685     CListItemDrawer* itemDrawer = iGrid->View()->ItemDrawer();
       
  3686     if (itemDrawer)
       
  3687     {
       
  3688         itemDrawer->ClearFlags(CListItemDrawer::ESingleClickDisabledHighlight);
       
  3689     }
       
  3690 #endif //RD_JAVA_S60_RELEASE_9_2
       
  3691 }
       
  3692 
       
  3693 #ifdef RD_JAVA_ADVANCED_TACTILE_FEEDBACK
  3683 #ifdef RD_JAVA_ADVANCED_TACTILE_FEEDBACK
  3694 void CSwtListView::DoControlSpecificFeedback(
  3684 void CSwtListView::DoControlSpecificFeedback(
  3695     const TBool& aFirstTap,
  3685     const TBool& aFirstTap,
  3696     const TBool& aTappedToChildRect,
  3686     const TBool& aTappedToChildRect,
  3697     const TPointerEvent& aPointerEvent) const
  3687     const TPointerEvent& aPointerEvent) const