920 { |
983 { |
921 return iLafOption; |
984 return iLafOption; |
922 } |
985 } |
923 |
986 |
924 // --------------------------------------------------------------------------- |
987 // --------------------------------------------------------------------------- |
|
988 // CPeninputLafDataFSQ::RelativeRect |
|
989 // (other items were commented in a header) |
|
990 // --------------------------------------------------------------------------- |
|
991 // |
|
992 TRect CPeninputLafDataFSQ::RelativeRect( const TRect& aRect, const TPoint& aPoint ) |
|
993 { |
|
994 TRect rect = aRect; |
|
995 rect.Move( - aPoint.iX, - aPoint.iY ); |
|
996 return rect; |
|
997 } |
|
998 |
|
999 // --------------------------------------------------------------------------- |
|
1000 // CPeninputLafDataFSQ::OffsetRect |
|
1001 // (other items were commented in a header) |
|
1002 // --------------------------------------------------------------------------- |
|
1003 // |
|
1004 TRect CPeninputLafDataFSQ::OffsetRect( const TRect& aRect, TInt aDx, TInt aDy ) |
|
1005 { |
|
1006 TRect rect = aRect; |
|
1007 rect.Move( aDx, aDy ); |
|
1008 return rect; |
|
1009 } |
|
1010 |
|
1011 // --------------------------------------------------------------------------- |
|
1012 // CPeninputLafDataFSQ::GetTopAndBottomPaneInfo |
|
1013 // (other items were commented in a header) |
|
1014 // --------------------------------------------------------------------------- |
|
1015 // |
|
1016 void CPeninputLafDataFSQ::GetTopAndBottomPaneInfo( const TRect& aParentWndRect, |
|
1017 TInt aLayoutType, |
|
1018 TInt aLayoutParam, |
|
1019 CPeninputQwtLayoutDataInfo& aDataInfo ) |
|
1020 { |
|
1021 TAknWindowLineLayout linelayout; |
|
1022 TAknLayoutRect layoutrect; |
|
1023 |
|
1024 TAknLayoutRect keypadRect, keypaneRect, keycellRect, keylabelRect; |
|
1025 TAknLayoutRect pic3paneRect; |
|
1026 |
|
1027 TPoint base; |
|
1028 TRect rectBottomWin, rectICFBg, rectICF, rectICFpane; |
|
1029 TAknTextLineLayout cellText; |
|
1030 TAknLayoutText txt; |
|
1031 TInt pic3pLeftWidth, pic3pRightWidth; |
|
1032 |
|
1033 base = aParentWndRect.iTl; |
|
1034 TRect rect = aParentWndRect; |
|
1035 rect.Move( - base.iX, - base.iY ); |
|
1036 aDataInfo.iClientRect = rect; |
|
1037 aDataInfo.iQwtRect = aParentWndRect; |
|
1038 |
|
1039 TInt v1, v2; |
|
1040 switch ( aLayoutType ) |
|
1041 { |
|
1042 case ELayout10x3: |
|
1043 { |
|
1044 v1 = 0; |
|
1045 v2 = 0; |
|
1046 break; |
|
1047 } |
|
1048 case ELayout11x3: |
|
1049 { |
|
1050 v1 = 1; |
|
1051 v2 = 2; |
|
1052 break; |
|
1053 } |
|
1054 case ELayout11x4: |
|
1055 { |
|
1056 v1 = 1; |
|
1057 v2 = 3; |
|
1058 break; |
|
1059 } |
|
1060 default: |
|
1061 { |
|
1062 v1 = 0; |
|
1063 v2 = 0; |
|
1064 } |
|
1065 } |
|
1066 |
|
1067 // Bottom pane rect |
|
1068 linelayout = AknLayoutScalable_Avkon::popup_fep_vkbss_window(0).LayoutLine(); |
|
1069 layoutrect.LayoutRect( aParentWndRect, linelayout ); |
|
1070 rectBottomWin = layoutrect.Rect(); |
|
1071 |
|
1072 // ICF pane rect |
|
1073 linelayout = AknLayoutScalable_Avkon::popup_fep_vkb_icf_pane(0).LayoutLine(); |
|
1074 layoutrect.LayoutRect( aParentWndRect, linelayout ); |
|
1075 rectICFpane = layoutrect.Rect(); |
|
1076 |
|
1077 // ICF bg pane rect |
|
1078 linelayout = AknLayoutScalable_Avkon::bg_icf_pane(0).LayoutLine(); |
|
1079 layoutrect.LayoutRect( rectICFpane, linelayout ); |
|
1080 rectICFBg = layoutrect.Rect(); |
|
1081 |
|
1082 // ICF area rect |
|
1083 linelayout = AknLayoutScalable_Avkon::list_vkb_icf_pane(0).LayoutLine(); |
|
1084 layoutrect.LayoutRect( rectICFBg, linelayout ); |
|
1085 rectICF = layoutrect.Rect(); |
|
1086 |
|
1087 aDataInfo.iICF.iRect = rectICF; |
|
1088 cellText = AknLayoutScalable_Avkon::list_vkb_icf_pane_t1(0, 0, 0).LayoutLine(); |
|
1089 aDataInfo.iICF.iPromptTextFont = AknLayoutUtils::FontFromId(cellText.iFont, NULL); |
|
1090 txt.LayoutText( rectICF, cellText ); |
|
1091 aDataInfo.iICF.iPromptTextRect = txt.TextRect(); |
|
1092 cellText = AknLayoutScalable_Avkon::list_vkb_icf_pane_t1(0, 0, 1).LayoutLine(); |
|
1093 aDataInfo.iICF.iTextFont = AknLayoutUtils::FontFromId(cellText.iFont, NULL); |
|
1094 txt.LayoutText( rectICF, cellText ); |
|
1095 aDataInfo.iICF.iTextRect = txt.TextRect(); |
|
1096 |
|
1097 // icf indicator |
|
1098 TAknWindowLineLayout icfIndiPaneWithText, icfIndiPaneWithoutText, |
|
1099 indiIconWithText, indiIconWithoutText, indiText; |
|
1100 TAknLayoutRect icfIndiPaneRectWithText, icfIndiPaneRectWithoutText, |
|
1101 indiIconRectWithText, indiIconRectWithoutText, indiTextRect; |
|
1102 TAknTextLineLayout indiTextLayout; |
|
1103 |
|
1104 icfIndiPaneWithText = AknLayoutScalable_Avkon::icf_edit_indi_pane(1).LayoutLine(); |
|
1105 icfIndiPaneRectWithText.LayoutRect( rectICF, icfIndiPaneWithText ); |
|
1106 aDataInfo.iIndiPaneRectWithTextForFSQ = icfIndiPaneRectWithText.Rect(); |
|
1107 |
|
1108 icfIndiPaneWithoutText = AknLayoutScalable_Avkon::icf_edit_indi_pane(0).LayoutLine(); |
|
1109 icfIndiPaneRectWithoutText.LayoutRect( rectICF, icfIndiPaneWithoutText ); |
|
1110 aDataInfo.iIndiPaneRectWithoutTextForFSQ = icfIndiPaneRectWithoutText.Rect(); |
|
1111 |
|
1112 aDataInfo.iIndiIconRectWithTextForFSQ = TRect( 0, 0, 60, 20 ); |
|
1113 aDataInfo.iIndiIconRectWithoutTextForFSQ = TRect( 0, 0, 60, 20 ); |
|
1114 |
|
1115 indiTextLayout = AknLayoutScalable_Avkon::icf_edit_indi_pane_t1(0).LayoutLine(); |
|
1116 aDataInfo.iIndiTextForFSQ = indiTextLayout; |
|
1117 |
|
1118 // keypad pane rect |
|
1119 linelayout = AknLayoutScalable_Avkon::grid_vkbss_keypad_pane(v1).LayoutLine(); |
|
1120 keypadRect.LayoutRect( rectBottomWin, linelayout ); |
|
1121 |
|
1122 // key pane rect |
|
1123 linelayout = AknLayoutScalable_Avkon::cell_vkbss_key_pane(v2).LayoutLine(); |
|
1124 keypaneRect.LayoutRect( keypadRect.Rect(), linelayout ); |
|
1125 |
|
1126 // key cell rect |
|
1127 linelayout = AknLayoutScalable_Avkon::bg_cell_vkbss_key_g1(v2).LayoutLine(); |
|
1128 keycellRect.LayoutRect( keypaneRect.Rect(), linelayout ); |
|
1129 |
|
1130 // key label rect |
|
1131 linelayout = AknLayoutScalable_Avkon::cell_vkbss_key_g1(v2).LayoutLine(); |
|
1132 keylabelRect.LayoutRect( keypaneRect.Rect(), linelayout ); |
|
1133 |
|
1134 // pic3pane rect |
|
1135 linelayout = AknLayoutScalable_Avkon::cell_vkbss_key_3p_pane(v2).LayoutLine(); |
|
1136 pic3paneRect.LayoutRect( keypaneRect.Rect(), linelayout ); |
|
1137 |
|
1138 linelayout = AknLayoutScalable_Avkon::cell_vkbss_key_3p_pane_g1(0).LayoutLine(); |
|
1139 layoutrect.LayoutRect( pic3paneRect.Rect(), linelayout ); |
|
1140 pic3pLeftWidth = layoutrect.Rect().Width(); |
|
1141 |
|
1142 linelayout = AknLayoutScalable_Avkon::cell_vkbss_key_3p_pane_g3(0).LayoutLine(); |
|
1143 layoutrect.LayoutRect( pic3paneRect.Rect(), linelayout ); |
|
1144 pic3pRightWidth = layoutrect.Rect().Width(); |
|
1145 |
|
1146 TRect rectXPane = keypaneRect.Rect(); |
|
1147 rect = keycellRect.Rect(); |
|
1148 rect.Move( - rectXPane.iTl.iX, - rectXPane.iTl.iY ); |
|
1149 TRect rectXBorder = rect; |
|
1150 rect = keylabelRect.Rect(); |
|
1151 rect.Move( - rectXPane.iTl.iX, - rectXPane.iTl.iY ); |
|
1152 TRect rectXInner = rect; |
|
1153 rect = pic3paneRect.Rect(); |
|
1154 rect.Move( - rectXPane.iTl.iX, - rectXPane.iTl.iY ); |
|
1155 TRect rect3PicPane = rect; |
|
1156 rectXPane.Move( - rectXPane.iTl ); |
|
1157 |
|
1158 rect = keypadRect.Rect(); |
|
1159 rect.Move( - base.iX, - base.iY ); |
|
1160 TRect rectOfKeypad = rect; |
|
1161 TRect rectOfButtons = rectOfKeypad; |
|
1162 rectOfKeypad.iBr.iY -= keypaneRect.Rect().Height(); |
|
1163 rectOfButtons.iTl.iY += rectOfKeypad.Height(); |
|
1164 |
|
1165 TInt spaceBtnWidth = rectOfButtons.Width() - rectXPane.Width() * 8; |
|
1166 TInt dx = rectOfButtons.iTl.iX; |
|
1167 TInt dy = rectOfButtons.iTl.iY; |
|
1168 |
|
1169 aDataInfo.iCloseButton.iRect = OffsetRect( rectXBorder, dx, dy ); |
|
1170 aDataInfo.iCloseButton.iInnerRect = OffsetRect( rectXInner, dx, dy ); |
|
1171 dx += rectXPane.Width(); |
|
1172 |
|
1173 aDataInfo.iShiftButton.iRect = OffsetRect( rectXBorder, dx, dy ); |
|
1174 aDataInfo.iShiftButton.iInnerRect = OffsetRect( rectXInner, dx, dy ); |
|
1175 dx += rectXPane.Width(); |
|
1176 |
|
1177 aDataInfo.iMultiRangeButton.iRect = OffsetRect( rectXBorder, dx, dy ); |
|
1178 aDataInfo.iMultiRangeButton.iInnerRect = OffsetRect( rectXInner, dx, dy ); |
|
1179 dx += rectXPane.Width(); |
|
1180 |
|
1181 aDataInfo.iLeftButton.iRect = OffsetRect( rectXBorder, dx, dy ); |
|
1182 aDataInfo.iLeftButton.iInnerRect = OffsetRect( rectXInner, dx, dy ); |
|
1183 dx += rectXPane.Width(); |
|
1184 |
|
1185 TInt expand = spaceBtnWidth - rectXPane.Width(); |
|
1186 aDataInfo.iSpaceButton.iRect = OffsetRect( rectXBorder, dx, dy ); |
|
1187 aDataInfo.iSpaceButton.iRect.Resize( expand, 0 ); |
|
1188 aDataInfo.iSpaceButton.iInnerRect = OffsetRect( rectXInner, dx, dy ); |
|
1189 aDataInfo.iSpaceButton.iInnerRect.Resize( expand, 0 ); |
|
1190 aDataInfo.iSpaceButtonEx.iIconsFrameRect = OffsetRect( rect3PicPane, dx, dy ); |
|
1191 aDataInfo.iSpaceButtonEx.iIconsFrameRect.Resize( expand, 0 ); |
|
1192 aDataInfo.iSpaceButtonEx.iMiddleIconRect = |
|
1193 aDataInfo.iSpaceButtonEx.iIconsFrameRect; |
|
1194 aDataInfo.iSpaceButtonEx.iMiddleIconRect.iTl.iX += pic3pLeftWidth; |
|
1195 aDataInfo.iSpaceButtonEx.iMiddleIconRect.iBr.iX -= pic3pRightWidth; |
|
1196 dx += spaceBtnWidth; |
|
1197 |
|
1198 aDataInfo.iRightButton.iRect = OffsetRect( rectXBorder, dx, dy ); |
|
1199 aDataInfo.iRightButton.iInnerRect = OffsetRect( rectXInner, dx, dy ); |
|
1200 dx += rectXPane.Width(); |
|
1201 |
|
1202 aDataInfo.iOptionButton.iRect = OffsetRect( rectXBorder, dx, dy ); |
|
1203 aDataInfo.iOptionButton.iInnerRect = OffsetRect( rectXInner, dx, dy ); |
|
1204 dx += rectXPane.Width(); |
|
1205 |
|
1206 aDataInfo.iEnterButton.iRect = OffsetRect( rectXBorder, dx, dy ); |
|
1207 aDataInfo.iEnterButton.iInnerRect = OffsetRect( rectXInner, dx, dy ); |
|
1208 dx += rectXPane.Width(); |
|
1209 |
|
1210 aDataInfo.iClearButton.iRect = OffsetRect( rectXBorder, dx, dy ); |
|
1211 aDataInfo.iClearButton.iInnerRect = OffsetRect( rectXInner, dx, dy ); |
|
1212 |
|
1213 // preview popup window |
|
1214 TAknWindowLineLayout previewWnd, previewWndInner; |
|
1215 TAknLayoutRect previewWndRect, previewWndInnerRect; |
|
1216 previewWnd = AknLayoutScalable_Avkon::popup_fep_char_preview_window(aLayoutParam).LayoutLine(); |
|
1217 previewWndRect.LayoutRect( aParentWndRect, previewWnd ); |
|
1218 previewWndInner = AknLayoutScalable_Avkon::bg_popup_fep_char_preview_window_g9().LayoutLine(); |
|
1219 previewWndInnerRect.LayoutRect( previewWndRect.Rect(), previewWndInner ); |
|
1220 aDataInfo.iPreviewWndRect = previewWndRect.Rect(); |
|
1221 aDataInfo.iPreviewWndInnerRect = previewWndInnerRect.Rect(); |
|
1222 aDataInfo.iPreviewWndText = AknLayoutScalable_Avkon::popup_fep_char_preview_window_t1( |
|
1223 aLayoutParam).LayoutLine(); |
|
1224 } |
|
1225 // --------------------------------------------------------------------------- |
925 // CPeninputLafDataVKB::NewL( TInt aLayoutType ) |
1226 // CPeninputLafDataVKB::NewL( TInt aLayoutType ) |
926 // (other items were commented in a header) |
1227 // (other items were commented in a header) |
927 // --------------------------------------------------------------------------- |
1228 // --------------------------------------------------------------------------- |
928 // |
1229 // |
929 CPeninputLafDataVKB* CPeninputLafDataVKB::NewL( TInt aLayoutType ) |
1230 CPeninputLafDataVKB* CPeninputLafDataVKB::NewL( TInt aLayoutType ) |
1157 TAknLayoutText keyTextLayout; |
1462 TAknLayoutText keyTextLayout; |
1158 TAknTextLineLayout keyText; |
1463 TAknTextLineLayout keyText; |
1159 TRect keyRect; |
1464 TRect keyRect; |
1160 // -----------------------Landscape Mode-------------------------- |
1465 // -----------------------Landscape Mode-------------------------- |
1161 appWnd = AknLayoutScalable_Avkon::application_window(0).LayoutLine(); |
1466 appWnd = AknLayoutScalable_Avkon::application_window(0).LayoutLine(); |
1162 wndLayout = AknLayoutScalable_Avkon::popup_fep_vkb2_window(0).LayoutLine(); |
1467 wndLayout = AknLayoutScalable_Avkon::main_fep_vtchi_ss_pane(0).LayoutLine(); |
1163 wndRect.LayoutRect(appWnd.Rect(), wndLayout); |
1468 wndRect.LayoutRect(appWnd.Rect(), wndLayout); |
|
1469 // Bottom pane rect |
|
1470 linelayout = AknLayoutScalable_Avkon::popup_fep_vkbss_window(0).LayoutLine(); |
|
1471 layoutrect.LayoutRect( wndRect.Rect(), linelayout ); |
|
1472 rectBottomWin = layoutrect.Rect(); |
|
1473 base = wndRect.Rect().iTl; |
1164 // ==================10x3==================== |
1474 // ==================10x3==================== |
1165 // top pane and bottom pane |
1475 // top pane and bottom pane |
1166 GetTopAndBottomPaneInfo( wndRect.Rect(), ELayout10x3, 0, *dataInfo ); |
1476 GetTopAndBottomPaneInfo( wndRect.Rect(), ELayout10x3, 0, *dataInfo ); |
1167 // keypad |
1477 // keypad |
1168 keyText = AknLayoutScalable_Avkon::vkb2_cell_keypad_pane_t1(0).LayoutLine(); |
1478 // Modify begin |
|
1479 keyText = AknLayoutScalable_Avkon::cell_vkbss_key_t1(0).LayoutLine(); |
|
1480 keyText.iB += 3; |
1169 dataInfo->iKeypad.iTextLayout = keyText; |
1481 dataInfo->iKeypad.iTextLayout = keyText; |
1170 dataInfo->iKeypad.iFont = AknLayoutUtils::FontFromId(keyText.iFont, NULL); |
1482 dataInfo->iKeypad.iFont = AknLayoutUtils::FontFromId( keyText.iFont, NULL ); |
1171 //dataInfo->iKeypad.iTxtRect = keyText.TextRect(); |
1483 |
1172 |
1484 keypad = AknLayoutScalable_Avkon::grid_vkbss_keypad_pane(0).LayoutLine(); |
1173 keypad = AknLayoutScalable_Avkon::vkb2_area_keypad_pane(0).LayoutLine(); |
1485 keypadRect.LayoutRect( rectBottomWin, keypad ); |
1174 keypadRect.LayoutRect(wndRect.Rect(), keypad); |
1486 |
1175 dataInfo->iKeypad.iKaypadRect = keypadRect.Rect(); |
1487 linelayout = AknLayoutScalable_Avkon::cell_vkbss_key_pane(0).LayoutLine(); |
1176 //iKeypadRect10x3 = keypadRect.Rect(); |
1488 keypaneRect.LayoutRect( keypadRect.Rect(), linelayout ); |
1177 cellPaneBK = AknLayoutScalable_Avkon::vkb2_cell_keypad_pane_g1(0, 0, 0).LayoutLine(); |
1489 |
|
1490 rectVkbCtrl = keypadRect.Rect(); |
|
1491 rectVkbCtrl.iBr.iY -= keypaneRect.Rect().Height(); |
|
1492 dataInfo->iKeypad.iKaypadRect = rectVkbCtrl; |
|
1493 |
|
1494 linelayout = AknLayoutScalable_Avkon::bg_cell_vkbss_key_g1(0).LayoutLine(); |
|
1495 keycellRect.LayoutRect( keypaneRect.Rect(), linelayout ); |
|
1496 |
|
1497 linelayout = AknLayoutScalable_Avkon::cell_vkbss_key_g1(0).LayoutLine(); |
|
1498 keylabelRect.LayoutRect( keypaneRect.Rect(), linelayout ); |
|
1499 |
|
1500 linelayout = AknLayoutScalable_Avkon::aid_vkbss_key_offset(0).LayoutLine(); |
|
1501 layoutrect.LayoutRect( keypadRect.Rect(), linelayout ); |
|
1502 TInt rowIndentWidth = layoutrect.Rect().Width(); |
|
1503 |
|
1504 TRect rectOfKeypad = RelativeRect( keypadRect.Rect(), base ); |
|
1505 rectOfKeypad.iBr.iY -= keypaneRect.Rect().Height(); |
|
1506 |
|
1507 TRect rectXPane = RelativeRect( keypaneRect.Rect(), base ); |
|
1508 TRect rectXBorder = RelativeRect( keycellRect.Rect(), base ); |
|
1509 TRect rectXInner = RelativeRect( keylabelRect.Rect(), base ); |
|
1510 |
|
1511 rectXPane.Move( - rectOfKeypad.iTl ); //translate to keypad coord-sys |
|
1512 rectXBorder.Move( - rectOfKeypad.iTl ); |
|
1513 rectXInner.Move( - rectOfKeypad.iTl ); |
|
1514 |
1178 for( TInt i = 0; i < KKeypadLayout[0][1]; i++) |
1515 for( TInt i = 0; i < KKeypadLayout[0][1]; i++) |
1179 { |
1516 { |
|
1517 TInt indent = ( i % 2 == 1 ) ? rowIndentWidth : 0; |
1180 for( TInt j = 0; j < KKeypadLayout[0][0]; j++) |
1518 for( TInt j = 0; j < KKeypadLayout[0][0]; j++) |
1181 { |
1519 { |
1182 cellpane = AknLayoutScalable_Avkon::vkb2_cell_keypad_pane(0, j, i).LayoutLine(); |
1520 TRect bound = rectXBorder; |
1183 cellpaneRect.LayoutRect(keypadRect.Rect(), cellpane); |
1521 bound.Move( j * rectXPane.Width(), i * rectXPane.Height() ); |
1184 keyRect = cellpaneRect.Rect(); |
1522 bound.Move( indent, 0 ); |
1185 keyRect.Move( -keypadRect.Rect().iTl.iX, -keypadRect.Rect().iTl.iY ); |
1523 |
1186 cellPaneBKRect.LayoutRect( keyRect, cellPaneBK ); |
1524 dataInfo->iKeypad.iRects.AppendL( bound ); |
1187 keyBKRect = cellPaneBKRect.Rect(); |
1525 |
1188 dataInfo->iKeypad.iRects.AppendL(keyBKRect); |
1526 TRect inner = rectXPane; |
1189 keyTextLayout.LayoutText(keyRect, keyText); |
1527 inner.Move( j * rectXPane.Width(), i * rectXPane.Height() ); |
1190 dataInfo->iKeypad.iCharRects.AppendL(keyTextLayout.TextRect()); |
1528 inner.Move( indent, 0 ); |
1191 } |
1529 |
|
1530 TAknLayoutText keyTextLayout; |
|
1531 keyTextLayout.LayoutText( inner, keyText ); |
|
1532 dataInfo->iKeypad.iCharRects.AppendL( keyTextLayout.TextRect() ); |
|
1533 } |
1192 } |
1534 } |
1193 keyText = AknLayoutScalable_Avkon::vkb2_cell_keypad_pane_t1(0).LayoutLine(); |
1535 // Modify end |
1194 dataInfo->iKeypad.iFont = AknLayoutUtils::FontFromId(keyText.iFont, NULL); |
1536 |
1195 //dataInfo->iKeypad.iTxtRect = keyText.TextRect(); |
1537 // Modify begin |
|
1538 //keyText = AknLayoutScalable_Avkon::vkb2_cell_keypad_pane_t1(0).LayoutLine(); |
|
1539 //dataInfo->iKeypad.iFont = AknLayoutUtils::FontFromId(keyText.iFont, NULL); |
|
1540 // Modify end |
1196 |
1541 |
1197 // Add candate list laf data for ITI features |
1542 // Add candate list laf data for ITI features |
1198 // Candidate list's parent Layout window is ITUT window |
1543 // Candidate list's parent Layout window is ITUT window |
1199 TPeninputCandidateListLayoutData candidateListLAF; |
1544 TPeninputCandidateListLayoutData candidateListLAF; |
1200 TAknWindowLineLayout parentWnd; |
1545 TAknWindowLineLayout parentWnd; |
1243 } |
1592 } |
1244 } |
1593 } |
1245 keyText = AknLayoutScalable_Avkon::vkb2_cell_keypad_pane_t1(1).LayoutLine(); |
1594 keyText = AknLayoutScalable_Avkon::vkb2_cell_keypad_pane_t1(1).LayoutLine(); |
1246 dataInfo->iKeypad.iTextLayout = keyText; |
1595 dataInfo->iKeypad.iTextLayout = keyText; |
1247 dataInfo->iKeypad.iFont = AknLayoutUtils::FontFromId(keyText.iFont, NULL); |
1596 dataInfo->iKeypad.iFont = AknLayoutUtils::FontFromId(keyText.iFont, NULL); |
1248 //dataInfo->iKeypad.iTxtRect = keyText.TextRect(); |
1597 */ |
|
1598 |
|
1599 keyText = AknLayoutScalable_Avkon::cell_vkbss_key_t1(2).LayoutLine(); |
|
1600 keyText.iB += 3; |
|
1601 dataInfo->iKeypad.iTextLayout = keyText; |
|
1602 dataInfo->iKeypad.iFont = AknLayoutUtils::FontFromId( keyText.iFont, NULL ); |
|
1603 |
|
1604 keypad = AknLayoutScalable_Avkon::grid_vkbss_keypad_pane(1).LayoutLine(); |
|
1605 keypadRect.LayoutRect( rectBottomWin, keypad ); |
|
1606 |
|
1607 linelayout = AknLayoutScalable_Avkon::cell_vkbss_key_pane(2).LayoutLine(); |
|
1608 keypaneRect.LayoutRect( keypadRect.Rect(), linelayout ); |
|
1609 |
|
1610 rectVkbCtrl = keypadRect.Rect(); |
|
1611 rectVkbCtrl.iBr.iY -= keypaneRect.Rect().Height(); |
|
1612 dataInfo->iKeypad.iKaypadRect = rectVkbCtrl; |
|
1613 |
|
1614 linelayout = AknLayoutScalable_Avkon::bg_cell_vkbss_key_g1(2).LayoutLine(); |
|
1615 keycellRect.LayoutRect( keypaneRect.Rect(), linelayout ); |
|
1616 |
|
1617 linelayout = AknLayoutScalable_Avkon::cell_vkbss_key_g1(2).LayoutLine(); |
|
1618 keylabelRect.LayoutRect( keypaneRect.Rect(), linelayout ); |
|
1619 |
|
1620 linelayout = AknLayoutScalable_Avkon::aid_vkbss_key_offset(1).LayoutLine(); |
|
1621 layoutrect.LayoutRect( keypadRect.Rect(), linelayout ); |
|
1622 rowIndentWidth = layoutrect.Rect().Width(); |
|
1623 |
|
1624 rectOfKeypad = RelativeRect( keypadRect.Rect(), base ); |
|
1625 rectOfKeypad.iBr.iY -= keypaneRect.Rect().Height(); |
|
1626 |
|
1627 rectXPane = RelativeRect( keypaneRect.Rect(), base ); |
|
1628 rectXBorder = RelativeRect( keycellRect.Rect(), base ); |
|
1629 rectXInner = RelativeRect( keylabelRect.Rect(), base ); |
|
1630 |
|
1631 rectXPane.Move( - rectOfKeypad.iTl ); //translate to keypad coord-sys |
|
1632 rectXBorder.Move( - rectOfKeypad.iTl ); |
|
1633 rectXInner.Move( - rectOfKeypad.iTl ); |
|
1634 |
|
1635 for( TInt i = 0; i < KKeypadLayout[1][1]; i++) |
|
1636 { |
|
1637 TInt indent = ( i % 2 == 1 ) ? rowIndentWidth : 0; |
|
1638 for( TInt j = 0; j < KKeypadLayout[1][0]; j++) |
|
1639 { |
|
1640 TRect bound = rectXBorder; |
|
1641 bound.Move( j * rectXPane.Width(), i * rectXPane.Height() ); |
|
1642 bound.Move( indent, 0 ); |
|
1643 |
|
1644 dataInfo->iKeypad.iRects.AppendL( bound ); |
|
1645 |
|
1646 TRect inner = rectXPane; |
|
1647 inner.Move( j * rectXPane.Width(), i * rectXPane.Height() ); |
|
1648 inner.Move( indent, 0 ); |
|
1649 |
|
1650 TAknLayoutText keyTextLayout; |
|
1651 keyTextLayout.LayoutText( inner, keyText ); |
|
1652 dataInfo->iKeypad.iCharRects.AppendL( keyTextLayout.TextRect() ); |
|
1653 } |
|
1654 } |
|
1655 // Modify end |
1249 |
1656 |
1250 if ( isLandscape ) |
1657 if ( isLandscape ) |
1251 { |
1658 { |
1252 // Add candate list laf data for ITI features |
1659 // Add candate list laf data for ITI features |
1253 dataInfo->iCandidateList = candidateListLAF; |
1660 dataInfo->iCandidateList = candidateListLAF; |
1285 } |
1696 } |
1286 } |
1697 } |
1287 keyText = AknLayoutScalable_Avkon::vkb2_cell_keypad_pane_t1(2).LayoutLine(); |
1698 keyText = AknLayoutScalable_Avkon::vkb2_cell_keypad_pane_t1(2).LayoutLine(); |
1288 dataInfo->iKeypad.iTextLayout = keyText; |
1699 dataInfo->iKeypad.iTextLayout = keyText; |
1289 dataInfo->iKeypad.iFont = AknLayoutUtils::FontFromId(keyText.iFont, NULL); |
1700 dataInfo->iKeypad.iFont = AknLayoutUtils::FontFromId(keyText.iFont, NULL); |
1290 //dataInfo->iKeypad.iTxtRect = keyText.TextRect(); |
1701 */ |
|
1702 |
|
1703 keyText = AknLayoutScalable_Avkon::cell_vkbss_key_t1(3).LayoutLine(); |
|
1704 keyText.iB += 3; |
|
1705 dataInfo->iKeypad.iTextLayout = keyText; |
|
1706 dataInfo->iKeypad.iFont = AknLayoutUtils::FontFromId( keyText.iFont, NULL ); |
|
1707 |
|
1708 keypad = AknLayoutScalable_Avkon::grid_vkbss_keypad_pane(1).LayoutLine(); |
|
1709 keypadRect.LayoutRect( rectBottomWin, keypad ); |
|
1710 |
|
1711 linelayout = AknLayoutScalable_Avkon::cell_vkbss_key_pane(3).LayoutLine(); |
|
1712 keypaneRect.LayoutRect( keypadRect.Rect(), linelayout ); |
|
1713 |
|
1714 rectVkbCtrl = keypadRect.Rect(); |
|
1715 rectVkbCtrl.iBr.iY -= keypaneRect.Rect().Height(); |
|
1716 dataInfo->iKeypad.iKaypadRect = rectVkbCtrl; |
|
1717 |
|
1718 linelayout = AknLayoutScalable_Avkon::bg_cell_vkbss_key_g1(3).LayoutLine(); |
|
1719 keycellRect.LayoutRect( keypaneRect.Rect(), linelayout ); |
|
1720 |
|
1721 linelayout = AknLayoutScalable_Avkon::cell_vkbss_key_g1(3).LayoutLine(); |
|
1722 keylabelRect.LayoutRect( keypaneRect.Rect(), linelayout ); |
|
1723 |
|
1724 linelayout = AknLayoutScalable_Avkon::aid_vkbss_key_offset(1).LayoutLine(); |
|
1725 layoutrect.LayoutRect( keypadRect.Rect(), linelayout ); |
|
1726 rowIndentWidth = layoutrect.Rect().Width(); |
|
1727 |
|
1728 rectOfKeypad = RelativeRect( keypadRect.Rect(), base ); |
|
1729 rectOfKeypad.iBr.iY -= keypaneRect.Rect().Height(); |
|
1730 |
|
1731 rectXPane = RelativeRect( keypaneRect.Rect(), base ); |
|
1732 rectXBorder = RelativeRect( keycellRect.Rect(), base ); |
|
1733 rectXInner = RelativeRect( keylabelRect.Rect(), base ); |
|
1734 |
|
1735 rectXPane.Move( - rectOfKeypad.iTl ); //translate to keypad coord-sys |
|
1736 rectXBorder.Move( - rectOfKeypad.iTl ); |
|
1737 rectXInner.Move( - rectOfKeypad.iTl ); |
|
1738 |
|
1739 for( TInt i = 0; i < KKeypadLayout[2][1]; i++) |
|
1740 { |
|
1741 TInt indent = ( i % 2 == 1 ) ? rowIndentWidth : 0; |
|
1742 for( TInt j = 0; j < KKeypadLayout[2][0]; j++) |
|
1743 { |
|
1744 TRect bound = rectXBorder; |
|
1745 bound.Move( j * rectXPane.Width(), i * rectXPane.Height() ); |
|
1746 bound.Move( indent, 0 ); |
|
1747 |
|
1748 dataInfo->iKeypad.iRects.AppendL( bound ); |
|
1749 |
|
1750 TRect inner = rectXPane; |
|
1751 inner.Move( j * rectXPane.Width(), i * rectXPane.Height() ); |
|
1752 inner.Move( indent, 0 ); |
|
1753 |
|
1754 TAknLayoutText keyTextLayout; |
|
1755 keyTextLayout.LayoutText( inner, keyText ); |
|
1756 dataInfo->iKeypad.iCharRects.AppendL( keyTextLayout.TextRect() ); |
|
1757 } |
|
1758 } |
|
1759 // Modify end |
1291 |
1760 |
1292 if ( isLandscape ) |
1761 if ( isLandscape ) |
1293 { |
1762 { |
1294 // Add candate list laf data for ITI features |
1763 // Add candate list laf data for ITI features |
1295 dataInfo->iCandidateList = candidateListLAF; |
1764 dataInfo->iCandidateList = candidateListLAF; |