equal
deleted
inserted
replaced
31 class CPeninputCommonChoiceList; |
31 class CPeninputCommonChoiceList; |
32 class CPeninputSplitQwertyLafMgr; |
32 class CPeninputSplitQwertyLafMgr; |
33 class CPeninputSyncBitmapRotator; |
33 class CPeninputSyncBitmapRotator; |
34 class CRepository; |
34 class CRepository; |
35 class CFepLayoutScrollableList; |
35 class CFepLayoutScrollableList; |
|
36 class CPopupBubbleCtrl; |
36 |
37 |
37 // Constants |
38 // Constants |
38 const TInt KMaxFileLength = 80; |
39 const TInt KMaxFileLength = 80; |
39 const TInt KMaxRangeLabelLength = 50; |
40 const TInt KMaxRangeLabelLength = 50; |
40 |
41 |
59 * @lib peninputsplitqwerty.lib |
60 * @lib peninputsplitqwerty.lib |
60 * @since S60 v5.0 |
61 * @since S60 v5.0 |
61 */ |
62 */ |
62 class CPeninputSplitQwertyWindow : public CPeninputLayoutWindowExt |
63 class CPeninputSplitQwertyWindow : public CPeninputLayoutWindowExt |
63 { |
64 { |
|
65 private: |
|
66 enum TIndicatorAlign |
|
67 { |
|
68 EIndiAlignLeft, |
|
69 EIndiAlignCenter, |
|
70 EIndiAlignRight |
|
71 }; |
64 public: |
72 public: |
65 /** |
73 /** |
66 * Symbian constructor |
74 * Symbian constructor |
67 * |
75 * |
68 * @since S60 v5.0 |
76 * @since S60 v5.0 |
288 * @param aEventData Event data |
296 * @param aEventData Event data |
289 * @return None |
297 * @return None |
290 */ |
298 */ |
291 TBool HandleVirtualKeyUpEvent( TInt aEventType, CFepUiBaseCtrl* aCtrl, |
299 TBool HandleVirtualKeyUpEvent( TInt aEventType, CFepUiBaseCtrl* aCtrl, |
292 const TDesC& aEventData ); |
300 const TDesC& aEventData ); |
|
301 |
|
302 /** |
|
303 * Handle virtual key down event |
|
304 * |
|
305 * @since S60 v5.0 |
|
306 * @param None |
|
307 * @return None |
|
308 */ |
|
309 void HandleVirtualKeyDownEvent(); |
293 |
310 |
294 /** |
311 /** |
295 * Submit dead key |
312 * Submit dead key |
296 * |
313 * |
297 * @param abuf Dead key buffer |
314 * @param abuf Dead key buffer |
365 * @since S60 v5.0 |
382 * @since S60 v5.0 |
366 * @return None |
383 * @return None |
367 */ |
384 */ |
368 void UpdateLayoutPosAndSize(); |
385 void UpdateLayoutPosAndSize(); |
369 |
386 |
370 |
387 /** |
|
388 * Set split indicator bubble size with text |
|
389 * |
|
390 * @return None |
|
391 */ |
|
392 void SetSplitIndiBubbleSizeWithText(); |
|
393 |
|
394 /** |
|
395 * Set split indicator bubble size without text |
|
396 * |
|
397 * @return None |
|
398 */ |
|
399 void SetSplitIndiBubbleSizeWithoutText(); |
|
400 |
|
401 /** |
|
402 * Update split indicator bubble |
|
403 * |
|
404 * @param aData text |
|
405 * @return None |
|
406 */ |
|
407 void UpdateSplitIndiBubbleL( TUint8* aData ); |
|
408 |
|
409 /** |
|
410 * Set bubble image |
|
411 * |
|
412 * @param aImgID1 image ID1 |
|
413 * @param aMaskID1 mask image id1 |
|
414 * @param aImgID2 image ID2 |
|
415 * @param aMaskID2 mask image id2 |
|
416 * @return None |
|
417 */ |
|
418 void SetSplitIndiBubbleImageL( const TInt aImgID1, |
|
419 const TInt aMaskID1, |
|
420 const TInt aImgID2, |
|
421 const TInt aMaskID2 ); |
|
422 |
|
423 /** |
|
424 * Calculate indicator bubble rect |
|
425 * |
|
426 * @param aBoundRect |
|
427 * @param aRealRect1 |
|
428 * @param aRealRect2 |
|
429 * @param aAlign |
|
430 * @return None |
|
431 */ |
|
432 void CalIndicatorRect(const TRect& aBoundRect, |
|
433 TRect& aRealRect1, |
|
434 TRect& aRealRect2, |
|
435 TIndicatorAlign aAlign); |
|
436 /** |
|
437 * Get indicator data |
|
438 * |
|
439 * @return TFepIndicatorInfo indicator info |
|
440 */ |
|
441 inline TFepIndicatorInfo SplitIndicatorData(); |
|
442 |
|
443 /** |
|
444 * Set indicator data |
|
445 * |
|
446 * @param aIndicatorData Indicator Data |
|
447 * @return None |
|
448 */ |
|
449 inline void SetSplitIndicatorData( const TFepIndicatorInfo& aIndicatorData ); |
|
450 |
371 protected: //from base class CPeninputLayoutWindowExt |
451 protected: //from base class CPeninputLayoutWindowExt |
372 /** |
452 /** |
373 * Set laf layout type |
453 * Set laf layout type |
374 * |
454 * |
375 * @since S60 v5.0 |
455 * @since S60 v5.0 |
629 * Not own |
709 * Not own |
630 */ |
710 */ |
631 CPeninputCommonChoiceList* iPopupWnd; |
711 CPeninputCommonChoiceList* iPopupWnd; |
632 |
712 |
633 /** |
713 /** |
|
714 * Indicator bubble |
|
715 * Not own |
|
716 */ |
|
717 CPopupBubbleCtrl* iSplitIndiBubble; |
|
718 |
|
719 /** |
634 * The resource file name |
720 * The resource file name |
635 */ |
721 */ |
636 TBuf<KMaxFileLength> iResourceFilename; |
722 TBuf<KMaxFileLength> iResourceFilename; |
637 |
723 |
638 /** |
724 /** |
736 * Accent commonds for range list |
822 * Accent commonds for range list |
737 * Own |
823 * Own |
738 */ |
824 */ |
739 RArray<CFepLayoutChoiceList::SItem> iAccentCmdList; |
825 RArray<CFepLayoutChoiceList::SItem> iAccentCmdList; |
740 |
826 |
|
827 /** |
|
828 * Indicator bubble size |
|
829 */ |
|
830 TSize iSplitIndicatorSize; |
|
831 |
|
832 /** |
|
833 * Indicator text size |
|
834 */ |
|
835 TSize iSplitIndicatorTextSize; |
|
836 |
|
837 /** |
|
838 * Indicator data |
|
839 */ |
|
840 TFepIndicatorInfo iSplitIndicatorData; |
|
841 |
741 /** |
842 /** |
742 * Range labels for range list |
843 * Range labels for range list |
743 */ |
844 */ |
744 TAllRangeLabels iRangeLabels; |
845 TAllRangeLabels iRangeLabels; |
745 |
846 |
758 inline TBool CPeninputSplitQwertyWindow::IsValidLanguage( TInt aLanguage ) |
859 inline TBool CPeninputSplitQwertyWindow::IsValidLanguage( TInt aLanguage ) |
759 { |
860 { |
760 return ( aLanguage != ELangTest && aLanguage != ELangNone ); |
861 return ( aLanguage != ELangTest && aLanguage != ELangNone ); |
761 } |
862 } |
762 |
863 |
|
864 inline void CPeninputSplitQwertyWindow::SetSplitIndicatorData( |
|
865 const TFepIndicatorInfo& aIndicatorData ) |
|
866 { |
|
867 iSplitIndicatorData.iIndicatorImgID = aIndicatorData.iIndicatorImgID; |
|
868 iSplitIndicatorData.iIndicatorMaskID = aIndicatorData.iIndicatorMaskID; |
|
869 iSplitIndicatorData.iIndicatorTextImgID = aIndicatorData.iIndicatorTextImgID; |
|
870 iSplitIndicatorData.iIndicatorTextMaskID = aIndicatorData.iIndicatorTextMaskID; |
|
871 } |
|
872 |
|
873 inline TFepIndicatorInfo CPeninputSplitQwertyWindow::SplitIndicatorData() |
|
874 { |
|
875 return iSplitIndicatorData; |
|
876 } |
|
877 |
763 inline CAknFepCtrlEventButton* CPeninputSplitQwertyWindow::EventButtonCtrl( |
878 inline CAknFepCtrlEventButton* CPeninputSplitQwertyWindow::EventButtonCtrl( |
764 TInt aCtrlId ) |
879 TInt aCtrlId ) |
765 { |
880 { |
766 return static_cast<CAknFepCtrlEventButton*> ( Control( aCtrlId ) ); |
881 return static_cast<CAknFepCtrlEventButton*> ( Control( aCtrlId ) ); |
767 } |
882 } |