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; |
|
37 |
36 |
38 // Constants |
37 // Constants |
39 const TInt KMaxFileLength = 80; |
38 const TInt KMaxFileLength = 80; |
40 const TInt KMaxRangeLabelLength = 50; |
39 const TInt KMaxRangeLabelLength = 50; |
41 |
40 |
60 * @lib peninputsplitqwerty.lib |
59 * @lib peninputsplitqwerty.lib |
61 * @since S60 v5.0 |
60 * @since S60 v5.0 |
62 */ |
61 */ |
63 class CPeninputSplitQwertyWindow : public CPeninputLayoutWindowExt |
62 class CPeninputSplitQwertyWindow : public CPeninputLayoutWindowExt |
64 { |
63 { |
65 private: |
|
66 enum TIndicatorAlign |
|
67 { |
|
68 EIndiAlignLeft, |
|
69 EIndiAlignCenter, |
|
70 EIndiAlignRight |
|
71 }; |
|
72 public: |
64 public: |
73 /** |
65 /** |
74 * Symbian constructor |
66 * Symbian constructor |
75 * |
67 * |
76 * @since S60 v5.0 |
68 * @since S60 v5.0 |
296 * @param aEventData Event data |
288 * @param aEventData Event data |
297 * @return None |
289 * @return None |
298 */ |
290 */ |
299 TBool HandleVirtualKeyUpEvent( TInt aEventType, CFepUiBaseCtrl* aCtrl, |
291 TBool HandleVirtualKeyUpEvent( TInt aEventType, CFepUiBaseCtrl* aCtrl, |
300 const TDesC& aEventData ); |
292 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(); |
|
310 |
293 |
311 /** |
294 /** |
312 * Submit dead key |
295 * Submit dead key |
313 * |
296 * |
314 * @param abuf Dead key buffer |
297 * @param abuf Dead key buffer |
382 * @since S60 v5.0 |
365 * @since S60 v5.0 |
383 * @return None |
366 * @return None |
384 */ |
367 */ |
385 void UpdateLayoutPosAndSize(); |
368 void UpdateLayoutPosAndSize(); |
386 |
369 |
387 /** |
370 |
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 |
|
451 protected: //from base class CPeninputLayoutWindowExt |
371 protected: //from base class CPeninputLayoutWindowExt |
452 /** |
372 /** |
453 * Set laf layout type |
373 * Set laf layout type |
454 * |
374 * |
455 * @since S60 v5.0 |
375 * @since S60 v5.0 |
709 * Not own |
629 * Not own |
710 */ |
630 */ |
711 CPeninputCommonChoiceList* iPopupWnd; |
631 CPeninputCommonChoiceList* iPopupWnd; |
712 |
632 |
713 /** |
633 /** |
714 * Indicator bubble |
|
715 * Not own |
|
716 */ |
|
717 CPopupBubbleCtrl* iSplitIndiBubble; |
|
718 |
|
719 /** |
|
720 * The resource file name |
634 * The resource file name |
721 */ |
635 */ |
722 TBuf<KMaxFileLength> iResourceFilename; |
636 TBuf<KMaxFileLength> iResourceFilename; |
723 |
637 |
724 /** |
638 /** |
822 * Accent commonds for range list |
736 * Accent commonds for range list |
823 * Own |
737 * Own |
824 */ |
738 */ |
825 RArray<CFepLayoutChoiceList::SItem> iAccentCmdList; |
739 RArray<CFepLayoutChoiceList::SItem> iAccentCmdList; |
826 |
740 |
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 |
|
842 /** |
741 /** |
843 * Range labels for range list |
742 * Range labels for range list |
844 */ |
743 */ |
845 TAllRangeLabels iRangeLabels; |
744 TAllRangeLabels iRangeLabels; |
846 |
745 |
859 inline TBool CPeninputSplitQwertyWindow::IsValidLanguage( TInt aLanguage ) |
758 inline TBool CPeninputSplitQwertyWindow::IsValidLanguage( TInt aLanguage ) |
860 { |
759 { |
861 return ( aLanguage != ELangTest && aLanguage != ELangNone ); |
760 return ( aLanguage != ELangTest && aLanguage != ELangNone ); |
862 } |
761 } |
863 |
762 |
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 |
|
878 inline CAknFepCtrlEventButton* CPeninputSplitQwertyWindow::EventButtonCtrl( |
763 inline CAknFepCtrlEventButton* CPeninputSplitQwertyWindow::EventButtonCtrl( |
879 TInt aCtrlId ) |
764 TInt aCtrlId ) |
880 { |
765 { |
881 return static_cast<CAknFepCtrlEventButton*> ( Control( aCtrlId ) ); |
766 return static_cast<CAknFepCtrlEventButton*> ( Control( aCtrlId ) ); |
882 } |
767 } |