--- a/textinput/peninputsplititut/src/peninputsplititutdatamgr.cpp Tue Sep 14 21:59:06 2010 +0300
+++ b/textinput/peninputsplititut/src/peninputsplititutdatamgr.cpp Wed Sep 15 12:34:44 2010 +0300
@@ -165,9 +165,20 @@
splitpanerect.LayoutRect(spliwndtrect.Rect(), splitpane);
iLayoutRect = spliwndtrect.Rect();
+
+ // split indi layout
+ TAknWindowLineLayout indiPane = AknLayoutScalable_Avkon::icf_edit_indi_pane(2).LayoutLine();
+ TAknWindowLineLayout indiIconPane = AknLayoutScalable_Avkon::icf_edit_indi_pane_g2(2).LayoutLine();
+
+ TAknLayoutRect indiRect, indiIconRect;
+ indiRect.LayoutRect(spliwndtrect.Rect(), indiPane);
+ indiIconRect.LayoutRect(spliwndtrect.Rect(), indiIconPane);
+
+ iLayoutRect.iTl.iY -= indiRect.Rect().Height();//include non ifc indi bubble
+
// spell layout rect
iLayoutRectSpell = rect;
- iLayoutOffset = spliwndtrect.Rect().iTl;
+ iLayoutOffset = spliwndtrect.Rect().iTl - TPoint(0,indiRect.Rect().Height());//include split indi bubble
iBackgroundRect = iLayoutRect;
iBackgroundRect.Move(-iLayoutOffset);
@@ -213,13 +224,19 @@
}
// read star icon rect
- if( i == 3 && j == 2 )
+ if( i == 3 && j == 0 )
{
TAknWindowLineLayout starIcon = AknLayoutScalable_Avkon::
cell_ituss_key_pane_g2( 0 ).LayoutLine();
TAknLayoutRect starIconRect;
starIconRect.LayoutRect( keyrect, starIcon );
- iStarIconRect = starIconRect.Rect();
+ iStarIconRect = starIconRect.Rect();
+
+ // Get the star icon rect under number mode
+ starIcon = AknLayoutScalable_Avkon::
+ cell_ituss_key_pane_g2(4).LayoutLine();
+ starIconRect.LayoutRect( keyrect, starIcon );
+ iStarIconRectInNumMode = starIconRect.Rect();
}
}
@@ -262,7 +279,9 @@
iCloseInnerRect = funcinnerrect.Rect();
iCloseInnerRect.Move(0, iKeypadRect.iBr.iY );
iCloseInnerRect.Move(-iLayoutOffset);
-
+
+ iCloseInnerRect.Move(-TPoint(0,indiRect.Rect().Height())); //include split indi bubble
+
// arrow left button
iArrowLeftRect = iCloseRect;
iArrowLeftRect.Move(btnWidth, 0);
@@ -394,16 +413,24 @@
icfIndiPaneWithoutText = AknLayoutScalable_Avkon::icf_edit_indi_pane(0).LayoutLine();
icfIndiPaneRectWithoutText.LayoutRect( focuspaneRect.Rect(), icfIndiPaneWithoutText );
- iIndiPaneRectWithoutTextForPrtWest = icfIndiPaneRectWithoutText.Rect();
+ iSpellIndiPaneRectWithoutTextForPrtWest = icfIndiPaneRectWithoutText.Rect();
TAknWindowLineLayout spellIndiIcon;
TAknLayoutRect spellIndiIconRect;
spellIndiIcon = AknLayoutScalable_Avkon::icf_edit_indi_pane_g2(0).LayoutLine();
spellIndiIconRect.LayoutRect( icfIndiPaneRectWithoutText.Rect(), spellIndiIcon );
- iIndiIconRectWithoutTextForPrtWest = spellIndiIconRect.Rect();
+ iSpellIconRectWithoutTextForPrtWest = spellIndiIconRect.Rect();
indiTextLayout = AknLayoutScalable_Avkon::icf_edit_indi_pane_t1(0).LayoutLine();
- iIndiTextForPrtWest = indiTextLayout;
+ iSpellTextForPrtWest = indiTextLayout;
+
+ // split indicator
+ iSplitIndiPaneRect = indiRect.Rect();
+ iSplitIndiIconRect = indiIconRect.Rect();
+ iSplitIndiIconRect.Move(0, -iSplitIndiPaneRect.iTl.iY + iKeypadRect.iTl.iY - iSplitIndiPaneRect.Height());
+ iSplitIndiPaneRect.Move(0, -iSplitIndiPaneRect.iTl.iY + iKeypadRect.iTl.iY - iSplitIndiPaneRect.Height());
+ indiTextLayout = AknLayoutScalable_Avkon::icf_edit_indi_pane_t1(1).LayoutLine();
+ iSplitIndiText = indiTextLayout;
// ICF text line info
TAknTextLineLayout icftextT1, icftextT2, icftextT3;
@@ -610,6 +637,21 @@
{
return &iVkNumText;
}
+ case EStarIconRect:
+ {
+ if ( iInputMode == ENumber || iInputMode == ENativeNumber )
+ {
+ return &iStarIconRectInNumMode;
+ }
+ else
+ {
+ return &iStarIconRect;
+ }
+ }
+ case EShiftIconRect:
+ {
+ return &iShiftIconRect;
+ }
case EKeypadRightTextLine1:
if ( iInputMode == ENumber || iInputMode == ENativeNumber )
{
@@ -762,12 +804,18 @@
return &iSpellBackSpcace;
case ESpellBackSpcaeInner:
return &iSpellBackSpcaceInner;
- case EIndiPaneWithoutTextRect:
- return &iIndiPaneRectWithoutTextForPrtWest;
- case EIndiIconWithoutTextRect:
- return &iIndiIconRectWithoutTextForPrtWest;
- case EIndiTextLine:
- return &iIndiTextForPrtWest;
+ case ESpellIndiPaneWithoutTextRect:
+ return &iSpellIndiPaneRectWithoutTextForPrtWest;
+ case ESpellIndiIconWithoutTextRect:
+ return &iSpellIconRectWithoutTextForPrtWest;
+ case ESpellIndiTextLine:
+ return &iSpellTextForPrtWest;
+ case ESplitIndiPaneRect:
+ return &iSplitIndiPaneRect;
+ case ESplitIndiIconRect:
+ return &iSplitIndiIconRect;
+ case ESplitIndiTextLine:
+ return &iSplitIndiText;
default:
break;
}
@@ -1221,4 +1269,15 @@
return EFalse;
}
+// ---------------------------------------------------------------------------
+// Get the size of the screen
+// ---------------------------------------------------------------------------
+//
+TRect CSplitItutDataMgr::screenSize()
+ {
+ TRect rect;
+ AknLayoutUtils::LayoutMetricsRect( AknLayoutUtils::EScreen, rect );
+ return rect;
+ }
+
// End Of File