equal
deleted
inserted
replaced
27 /* ================================================================================ |
27 /* ================================================================================ |
28 * CTsFastSwapGrid |
28 * CTsFastSwapGrid |
29 * ================================================================================ |
29 * ================================================================================ |
30 */ |
30 */ |
31 |
31 |
|
32 const TInt KCloseIconRedrawTime = 300000; // 0.3 second |
|
33 |
32 // ----------------------------------------------------------------------------- |
34 // ----------------------------------------------------------------------------- |
33 // CTsFastSwapGrid::CTsFastSwapGrid |
35 // CTsFastSwapGrid::CTsFastSwapGrid |
34 // ----------------------------------------------------------------------------- |
36 // ----------------------------------------------------------------------------- |
35 // |
37 // |
36 CTsFastSwapGrid::CTsFastSwapGrid() |
38 CTsFastSwapGrid::CTsFastSwapGrid() |
48 // |
50 // |
49 CTsFastSwapGrid::~CTsFastSwapGrid() |
51 CTsFastSwapGrid::~CTsFastSwapGrid() |
50 { |
52 { |
51 iCloseItems.Close(); |
53 iCloseItems.Close(); |
52 delete iBgContext; |
54 delete iBgContext; |
|
55 delete iCloseIconRedrawTimer; |
53 iFullyVisibleItems.Close(); |
56 iFullyVisibleItems.Close(); |
54 iPartialVisibleItems.Close(); |
57 iPartialVisibleItems.Close(); |
55 } |
58 } |
56 |
59 |
57 // ----------------------------------------------------------------------------- |
60 // ----------------------------------------------------------------------------- |
69 TRect(), |
72 TRect(), |
70 TRect(), |
73 TRect(), |
71 ETrue ); |
74 ETrue ); |
72 iBgContext->SetCenter( KAknsIIDQsnFrPopupCenter ); |
75 iBgContext->SetCenter( KAknsIIDQsnFrPopupCenter ); |
73 iVisibleViewRect = TRect( 0, 0, 0, 0 ); |
76 iVisibleViewRect = TRect( 0, 0, 0, 0 ); |
|
77 iCloseIconRedrawTimer = new (ELeave) CTsFastSwapTimer( *this ); |
|
78 iCloseIconRedrawTimer->ConstructL(); |
74 } |
79 } |
75 |
80 |
76 // ----------------------------------------------------------------------------- |
81 // ----------------------------------------------------------------------------- |
77 // CTsFastSwapGrid::HandlePointerEventL |
82 // CTsFastSwapGrid::HandlePointerEventL |
78 // ----------------------------------------------------------------------------- |
83 // ----------------------------------------------------------------------------- |
132 MTouchFeedback* feedback = MTouchFeedback::Instance(); |
137 MTouchFeedback* feedback = MTouchFeedback::Instance(); |
133 feedback->InstantFeedback(this, |
138 feedback->InstantFeedback(this, |
134 ETouchFeedbackBasicButton, |
139 ETouchFeedbackBasicButton, |
135 ETouchFeedbackVibra, |
140 ETouchFeedbackVibra, |
136 aPointerEvent); |
141 aPointerEvent); |
137 iFastSwapGridObserver->HandleCloseEventL( hitDataIdx ); |
142 iCloseIconRedrawTimer->Cancel(); |
|
143 iCloseIconRedrawTimer->After(KCloseIconRedrawTime); |
138 } |
144 } |
139 ResetCloseHit(); |
|
140 if ( GridBehaviour() == EHybrid ) |
145 if ( GridBehaviour() == EHybrid ) |
141 { |
146 { |
142 ShowHighlight(); |
147 ShowHighlight(); |
143 } |
148 } |
144 else |
149 else |
251 CleanupStack::Pop( itemDrawer ); |
256 CleanupStack::Pop( itemDrawer ); |
252 CleanupStack::Pop( data ); |
257 CleanupStack::Pop( data ); |
253 LoadCloseIcon(); |
258 LoadCloseIcon(); |
254 } |
259 } |
255 |
260 |
|
261 // ----------------------------------------------------------------------------- |
|
262 // CTsFastSwapGrid::TimerCompletedL |
|
263 // ----------------------------------------------------------------------------- |
|
264 // |
|
265 void CTsFastSwapGrid::TimerCompletedL( CTsFastSwapTimer* aSource ) |
|
266 { |
|
267 if ( aSource == iCloseIconRedrawTimer ) |
|
268 { |
|
269 iFastSwapGridObserver->HandleCloseEventL( iCloseIconHitIdx ); |
|
270 ResetCloseHit(); |
|
271 } |
|
272 } |
256 |
273 |
257 // ----------------------------------------------------------------------------- |
274 // ----------------------------------------------------------------------------- |
258 // CTsFastSwapGrid::SetCloseItemsL |
275 // CTsFastSwapGrid::SetCloseItemsL |
259 // ----------------------------------------------------------------------------- |
276 // ----------------------------------------------------------------------------- |
260 // |
277 // |
408 { |
425 { |
409 // Load and set close icon |
426 // Load and set close icon |
410 CFbsBitmap* icon = NULL; |
427 CFbsBitmap* icon = NULL; |
411 CFbsBitmap* mask = NULL; |
428 CFbsBitmap* mask = NULL; |
412 |
429 |
413 TRAP_IGNORE(AknsUtils::CreateIconLC( AknsUtils::SkinInstance(), |
430 TRAP_IGNORE(AknsUtils::CreateColorIconLC( AknsUtils::SkinInstance(), |
414 KAknsIIDQgnIndiItutListCollapse, |
431 KAknsIIDQgnIndiItutListCollapse, |
|
432 KAknsIIDQsnTextColors, // we use text color here, eventhough this is an icon |
|
433 EAknsCIQsnTextColorsCG13, // softkey text color |
415 icon, |
434 icon, |
416 mask, |
435 mask, |
417 KAvkonBitmapFile, |
436 KAvkonBitmapFile, |
418 EMbmAvkonQgn_indi_button_preview_close, |
437 EMbmAvkonQgn_indi_button_preview_close, |
419 EMbmAvkonQgn_indi_button_preview_close_mask |
438 EMbmAvkonQgn_indi_button_preview_close_mask, |
|
439 KRgbWhite |
420 ); |
440 ); |
421 CleanupStack::Pop( 2 ); // codescanner::cleanup |
441 CleanupStack::Pop( 2 ); // codescanner::cleanup |
422 ); |
442 ); |
423 |
443 |
424 TAknLayoutRect gridAppPane; |
444 TAknLayoutRect gridAppPane; |