48 { |
48 { |
49 ReadLafInfo(); |
49 ReadLafInfo(); |
50 } |
50 } |
51 |
51 |
52 void CAknFepUiLayoutDataMgr::ReadLafInfo() |
52 void CAknFepUiLayoutDataMgr::ReadLafInfo() |
53 { |
53 { |
54 // Screen |
54 // Screen |
55 TRect rect; |
55 TRect rect; |
56 AknLayoutUtils::LayoutMetricsRect( AknLayoutUtils::EScreen, rect ); |
56 AknLayoutUtils::LayoutMetricsRect(AknLayoutUtils::EScreen, rect); |
57 iScreenSize = rect.Size(); |
57 iScreenSize = rect.Size(); |
58 |
58 |
59 iLandScape = iScreenSize.iWidth < iScreenSize.iHeight ? EFalse : ETrue; |
59 iLandScape = iScreenSize.iWidth < iScreenSize.iHeight ? EFalse : ETrue; |
60 |
60 |
61 // 1. Container With Candidate list |
61 TAknWindowLineLayout layoutLineEntry, layoutLineCandidate, layoutLineEEP; |
62 TAknWindowLineLayout layoutLineEntry; |
62 TAknLayoutRect layoutRectEntry, layoutRectCandidate, layoutRectEEP; |
63 TAknLayoutRect layoutRectEntry; |
63 |
64 |
64 layoutLineEntry = AKN_LAYOUT_WINDOW_popup_fep_china_uni_window(0,0); |
65 // Get container Rect & height |
65 layoutRectEntry.LayoutRect(iScreenSize,layoutLineEntry); |
66 layoutLineEntry = AknLayoutScalable_Avkon::popup_hyb_candi_window(0); |
66 iPopupRectEntry = layoutLineEntry.Rect(); |
67 layoutRectEntry.LayoutRect( rect, layoutLineEntry ); |
|
68 iPopupRectEntry = layoutRectEntry.Rect(); |
|
69 iPopupHeightEntry = layoutLineEntry.iH; |
67 iPopupHeightEntry = layoutLineEntry.iH; |
70 |
68 |
71 // Candidate layout |
69 //PinyinPopupWindowRect |
72 iCandidate = AknLayoutScalable_Avkon::grid_hyb_candi_pane(0); |
70 iEntryPaneWindowLine = AKN_LAYOUT_WINDOW_fep_china_uni_entry_pane; |
73 |
71 iLayoutEntryItem = AKN_LAYOUT_WINDOW_fep_entry_item_pane; |
74 // Scroll layout |
72 |
75 iScrollLayout = AknLayoutScalable_Avkon::cell_hyb_candi_scroll_pane(0); |
73 iLayoutLineRectEntryPane.LayoutRect(iPopupRectEntry, iEntryPaneWindowLine); |
76 |
74 |
77 // Up arrow & down arrow & close in scroll pane |
75 layoutLineCandidate = AKN_LAYOUT_WINDOW_popup_fep_china_uni_window(0,1); |
78 iUpArrowLayout = AknLayoutScalable_Avkon::cell_hyb_candi_scroll_pane_g1_aid(0); |
76 layoutRectCandidate.LayoutRect(iScreenSize,layoutLineCandidate); |
79 iDownArrowLayout = AknLayoutScalable_Avkon::cell_hyb_candi_scroll_pane_g2_aid(0); |
77 iPopupRectCandidate = layoutLineCandidate.Rect(); |
80 iCloseLayout = AknLayoutScalable_Avkon::cell_hyb_candi_scroll_pane_g3(0); |
78 |
81 |
79 layoutLineEEP = AKN_LAYOUT_WINDOW_popup_fep_china_uni_window(0,2);//need updated |
82 // Character in candidate pane |
80 layoutRectEEP.LayoutRect(iScreenSize,layoutLineEEP); |
83 iCharacterLineLayout = AknLayoutScalable_Avkon::cell_hyb_candi_pane(0); |
81 iPopupRectEEP = layoutLineEEP.Rect(); |
84 iCharacterTextLayout = AknLayoutScalable_Avkon::cell_hyb_candi_pane_t1(0); |
|
85 iEntryPaneWindowLine = AknLayoutScalable_Avkon::input_focus_pane_cp06( 0 ); |
|
86 iEntryPaneWindowLine.il = 3; |
|
87 iEntryPaneWindowLine.it = 3; |
|
88 iEntryPaneWindowLine.ir = 5; |
|
89 iEntryPaneWindowLine.iH = 30; |
|
90 iLayoutEntryItem = AKN_LAYOUT_WINDOW_fep_entry_item_pane; |
|
91 iLayoutLineRectEntryPane.LayoutRect( iPopupRectEntry, iEntryPaneWindowLine ); |
|
92 |
|
93 // 2. EC( With Candidate list & Entry ) |
|
94 TAknWindowLineLayout layoutLineCandidate; |
|
95 TAknLayoutRect layoutRectCandidate, layoutEC; |
|
96 |
|
97 // Container Rect & height |
|
98 layoutLineCandidate = AknLayoutScalable_Avkon::popup_hyb_candi_window(1); |
|
99 layoutRectCandidate.LayoutRect( rect,layoutLineCandidate ); |
|
100 iPopupRectCandidate = layoutRectCandidate.Rect(); |
|
101 iPopupRectCandidateHeight = layoutLineCandidate.iH; |
|
102 |
|
103 // Candidate layout |
|
104 iECandidate = AknLayoutScalable_Avkon::grid_hyb_candi_pane(1); |
|
105 iEntryCLayout = AknLayoutScalable_Avkon::entry_hyb_candi_pane(0); |
|
106 |
|
107 // Phrase pane layout |
|
108 iECWindowLayout = AknLayoutScalable_Avkon::grid_hyb_phrase_pane(0); |
|
109 |
|
110 // 3. ECP( With Candidate list & Entry & PopUp ) |
|
111 TAknWindowLineLayout layoutLineEEP; |
|
112 TAknLayoutRect layoutEEP, layoutRectEEP; |
|
113 |
|
114 // Container Rect & height |
|
115 layoutLineEEP = AknLayoutScalable_Avkon::popup_hyb_candi_window(2); |
|
116 layoutRectEEP.LayoutRect(rect,layoutLineEEP); |
|
117 iPopupRectEEP = layoutRectEEP.Rect(); |
|
118 iPopupHeightEEP = layoutLineEEP.iH; |
82 iPopupHeightEEP = layoutLineEEP.iH; |
119 |
83 |
120 //Entry |
84 |
121 iEntryCPLayout = AknLayoutScalable_Avkon::entry_hyb_candi_pane(1); |
85 iCandidatePaneWindowLine = AKN_LAYOUT_WINDOW_fep_china_uni_candidate_pane( 0 ); |
122 iEntryWithCandidateAndPopUp = AknLayoutScalable_Avkon::grid_hyb_phrase_pane(1); |
86 |
123 |
87 //Candidate |
124 // Candidate layout |
88 |
125 iEPCandidate = AknLayoutScalable_Avkon::grid_hyb_candi_pane(2); |
89 iCandidatePaneTextLine = AKN_LAYOUT_TEXT_Chinese_universal_FEP_candidate_pane_texts_Line_1; |
126 |
90 iOrdinalCandidateTextLayout = AKN_LAYOUT_TEXT_Chinese_universal_FEP_candidate_pane_texts_Line_3; |
127 //EEP |
91 iCandidateWindowLine1 = AKN_LAYOUT_WINDOW_Chinese_universal_FEPcandidate_pane_elements_Line_1; |
128 iEEPWindowLayout = AknLayoutScalable_Avkon::grid_hyb_phrase_pane(1); |
92 iCandidateWindowLine2 = AKN_LAYOUT_WINDOW_Chinese_universal_FEPcandidate_pane_elements_Line_2; |
129 layoutEEP.LayoutRect( iPopupRectEEP, iEEPWindowLayout ); |
93 iCandidateWindowLine3 = AKN_LAYOUT_WINDOW_Chinese_universal_FEPcandidate_pane_elements_Line_3; |
130 iEEPWindowRect = layoutEEP.Rect(); |
94 iCandidateWindowLine4 = AKN_LAYOUT_WINDOW_Chinese_universal_FEPcandidate_pane_elements_Line_4; |
131 |
95 |
|
96 iLayoutCandidateItem = AKN_LAYOUT_WINDOW_fep_candidate_item_pane; |
|
97 |
|
98 //EEP |
|
99 TAknWindowComponentLayout EEPWindowComponentLayout = AknLayoutScalable_Avkon::fep_china_uni_eep_pane(); |
|
100 iEEPWindowLayout = EEPWindowComponentLayout.LayoutLine(); |
|
101 TAknLayoutRect EEPLayout; |
|
102 EEPLayout.LayoutRect( iPopupRectEEP, iEEPWindowLayout ); |
|
103 iEEPWindowRect = EEPLayout.Rect(); |
|
104 // |
132 iRectCoverMainPaneInputEntry.LayoutRect(iPopupRectEntry, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_1(iPopupRectEntry)); |
105 iRectCoverMainPaneInputEntry.LayoutRect(iPopupRectEntry, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_1(iPopupRectEntry)); |
133 iRectFirstShadowInputEntry.LayoutRect(iPopupRectEntry, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_2(iPopupRectEntry)); |
106 iRectFirstShadowInputEntry.LayoutRect(iPopupRectEntry, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_2(iPopupRectEntry)); |
134 iRectOutlineFrameInputEntry.LayoutRect(iPopupRectEntry, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_3(iPopupRectEntry)); |
107 iRectOutlineFrameInputEntry.LayoutRect(iPopupRectEntry, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_3(iPopupRectEntry)); |
135 iRectInsideAreaInputEntry.LayoutRect(iPopupRectEntry, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_4(iPopupRectEntry)); |
108 iRectInsideAreaInputEntry.LayoutRect(iPopupRectEntry, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_4(iPopupRectEntry)); |
136 |
109 |
141 iRectOutlineFrameInputCandidate.LayoutRect(iPopupRectCandidate, |
114 iRectOutlineFrameInputCandidate.LayoutRect(iPopupRectCandidate, |
142 AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_3(iPopupRectCandidate)); |
115 AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_3(iPopupRectCandidate)); |
143 iRectInsideAreaInputCandidate.LayoutRect(iPopupRectCandidate, |
116 iRectInsideAreaInputCandidate.LayoutRect(iPopupRectCandidate, |
144 AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_4(iPopupRectCandidate)); |
117 AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_4(iPopupRectCandidate)); |
145 |
118 |
146 |
|
147 iRectCoverMainPaneInputEEP.LayoutRect(iPopupRectEEP, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_1(iPopupRectEEP)); |
119 iRectCoverMainPaneInputEEP.LayoutRect(iPopupRectEEP, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_1(iPopupRectEEP)); |
148 iRectFirstShadowInputEEP.LayoutRect(iPopupRectEEP, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_2(iPopupRectEEP)); |
120 iRectFirstShadowInputEEP.LayoutRect(iPopupRectEEP, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_2(iPopupRectEEP)); |
149 iRectOutlineFrameInputEEP.LayoutRect(iPopupRectEEP, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_3(iPopupRectEEP)); |
121 iRectOutlineFrameInputEEP.LayoutRect(iPopupRectEEP, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_3(iPopupRectEEP)); |
150 iRectInsideAreaInputEEP.LayoutRect(iPopupRectEEP, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_4(iPopupRectEEP)); |
122 iRectInsideAreaInputEEP.LayoutRect(iPopupRectEEP, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_4(iPopupRectEEP)); |
151 |
123 |
|
124 //HorizLine |
|
125 |
152 iEntryHorizLineWindow = AknLayoutScalable_Avkon::popup_fep_china_uni_window_g(0,0).LayoutLine(); |
126 iEntryHorizLineWindow = AknLayoutScalable_Avkon::popup_fep_china_uni_window_g(0,0).LayoutLine(); |
153 iEEPSecondHorizLineWindow = AknLayoutScalable_Avkon::popup_fep_china_uni_window_g(0,1).LayoutLine(); |
127 iEEPSecondHorizLineWindow = AknLayoutScalable_Avkon::popup_fep_china_uni_window_g(0,1).LayoutLine(); |
154 iEEPFirstHorizLineWindow = AknLayoutScalable_Avkon::popup_fep_china_uni_window_g(1,0).LayoutLine(); |
128 iEEPFirstHorizLineWindow = AknLayoutScalable_Avkon::popup_fep_china_uni_window_g(1,0).LayoutLine(); |
155 iHorizLine.LayoutRect(iPopupRectEntry, iEntryHorizLineWindow); |
129 iHorizLine.LayoutRect(iPopupRectEntry, iEntryHorizLineWindow); |
156 iEEPFirstHorizLine.LayoutRect(iPopupRectEEP, iEEPFirstHorizLineWindow); |
130 iEEPFirstHorizLine.LayoutRect(iPopupRectEEP, iEEPFirstHorizLineWindow); |
157 iEEPSecondHorizLine.LayoutRect(iPopupRectEEP, iEEPSecondHorizLineWindow); |
131 iEEPSecondHorizLine.LayoutRect(iPopupRectEEP, iEEPSecondHorizLineWindow); |
|
132 |
158 iEntryPaneRect = iLayoutLineRectEntryPane.Rect( ); |
133 iEntryPaneRect = iLayoutLineRectEntryPane.Rect( ); |
159 |
134 iEntryTextLayout |
|
135 = AKN_LAYOUT_TEXT_Chinese_universal_FEP_entry_pane_texts_Line_1(0); |
160 TAknLayoutRect labelRect; |
136 TAknLayoutRect labelRect; |
161 labelRect.LayoutRect( iEntryPaneRect, AknLayoutScalable_Avkon::entry_hyb_candi_pane(0)); |
137 labelRect.LayoutRect( iEntryPaneRect, |
162 iEntryTextLayout = AknLayoutScalable_Avkon::entry_hyb_candi_pane_t1( 0 ); |
138 AKN_LAYOUT_WINDOW_fep_entry_item_pane ); |
163 iLayoutInputPaneText.LayoutText( labelRect.Rect( ), iEntryTextLayout ); |
139 iLayoutInputPaneText.LayoutText( labelRect.Rect( ), iEntryTextLayout ); |
164 |
140 |
165 TRect windowRect = layoutRectEntry.Rect(); |
141 TRect windowRect = layoutRectEntry.Rect(); |
166 TInt height = windowRect.Height(); |
142 TInt height = windowRect.Height(); |
167 TInt width = windowRect.Width(); |
143 TInt width = windowRect.Width(); |
168 |
|
169 windowRect.iTl.iY = 0; |
144 windowRect.iTl.iY = 0; |
170 windowRect.iTl.iX = 0; |
145 windowRect.iTl.iX = 0; |
171 windowRect.SetHeight(height); |
146 windowRect.SetHeight(height); |
172 windowRect.SetWidth(width); |
147 windowRect.SetWidth(width); |
173 |
148 |
174 TAknLayoutRect layoutLineRectEntryPane; |
149 TAknLayoutRect layoutLineRectEntryPane; |
175 layoutLineRectEntryPane.LayoutRect(windowRect, iEntryPaneWindowLine); |
150 layoutLineRectEntryPane.LayoutRect(windowRect, iEntryPaneWindowLine); |
176 TRect entryPane = layoutLineRectEntryPane.Rect(); |
151 TRect entryPane = layoutLineRectEntryPane.Rect(); |
177 |
152 // left and right arrow |
|
153 TAknWindowLineLayout leftArrowLayoutLine, rithgArrowLayoutLine; |
|
154 leftArrowLayoutLine = AKN_LAYOUT_WINDOW_Chinese_universal_FEP_entry_pane_elements_Line_1; |
|
155 iIndiFepArrowLeft.LayoutRect(entryPane,leftArrowLayoutLine); |
|
156 rithgArrowLayoutLine = AKN_LAYOUT_WINDOW_Chinese_universal_FEP_entry_pane_elements_Line_2; |
|
157 iIndiFepArrowRight.LayoutRect(entryPane,rithgArrowLayoutLine); |
|
158 |
178 iRectCoverMainPaneInput.LayoutRect(windowRect, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_1(windowRect)); |
159 iRectCoverMainPaneInput.LayoutRect(windowRect, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_1(windowRect)); |
179 iRectFirstShadowInput.LayoutRect(windowRect, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_2(windowRect)); |
160 iRectFirstShadowInput.LayoutRect(windowRect, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_2(windowRect)); |
180 iRectOutlineFrameInput.LayoutRect(windowRect, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_3(windowRect)); |
161 iRectOutlineFrameInput.LayoutRect(windowRect, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_3(windowRect)); |
181 iRectInsideAreaInput.LayoutRect(windowRect, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_4(windowRect)); |
162 iRectInsideAreaInput.LayoutRect(windowRect, AKN_LAYOUT_WINDOW_Chinese_universal_FEP_pop_up_window_graphics_Line_4(windowRect)); |
182 |
163 |
183 //eep text |
164 //eep text |
184 TAknTextComponentLayout textLayout = AknLayoutScalable_Avkon::entry_hyb_candi_pane_t1(0); |
165 TAknTextComponentLayout textLayout = AknLayoutScalable_Avkon::fep_china_uni_eep_pane_t1(); |
185 iEEPTextLine = textLayout.LayoutLine(); |
166 iEEPTextLine = textLayout.LayoutLine(); |
186 TAknLayoutText eepTextLayout; |
167 TAknLayoutText eepTextLayout; |
187 eepTextLayout.LayoutText( iEEPWindowRect, iEEPTextLine ); |
168 eepTextLayout.LayoutText( iEEPWindowRect, iEEPTextLine ); |
188 iEEPTextColor = eepTextLayout.Color(); |
169 iEEPTextColor = eepTextLayout.Color(); |
189 const CFont* font = AknLayoutUtils::FontFromId(iEEPTextLine.FontId()); |
170 const CFont* font = AknLayoutUtils::FontFromId(iEEPTextLine.FontId()); |
190 iEEPCursorHeight = font->HeightInPixels(); |
171 iEEPCursorHeight = font->HeightInPixels(); |
191 iInputLayout = AknLayoutScalable_Avkon::cell_hyb_phrase_pane(0); |
|
192 iInputTextLayout = AknLayoutScalable_Avkon::cell_hyb_phrase_pane_t1(0); |
|
193 } |
172 } |
194 |
173 |
195 TAny* CAknFepUiLayoutDataMgr::RequestData(TInt aDataType) |
174 TAny* CAknFepUiLayoutDataMgr::RequestData(TInt aDataType) |
196 { |
175 { |
197 switch ( aDataType ) |
176 switch ( aDataType ) |
208 return &iPopupHeightEEP; |
187 return &iPopupHeightEEP; |
209 case EEntryPaneWindowLine: |
188 case EEntryPaneWindowLine: |
210 return &iEntryPaneWindowLine; |
189 return &iEntryPaneWindowLine; |
211 case ECandidatePaneWindowLine: |
190 case ECandidatePaneWindowLine: |
212 return &iCandidatePaneWindowLine; |
191 return &iCandidatePaneWindowLine; |
|
192 case ECandidatePaneTextLine: |
|
193 return &iCandidatePaneTextLine; |
|
194 case ECandidateWindowLine1: |
|
195 return &iCandidateWindowLine1; |
|
196 case ECandidateWindowLine2: |
|
197 return &iCandidateWindowLine2; |
|
198 case ECandidateWindowLine3: |
|
199 return &iCandidateWindowLine3; |
|
200 case ECandidateWindowLine4: |
|
201 return &iCandidateWindowLine4; |
|
202 case ELayoutCandidateItem: |
|
203 return &iLayoutCandidateItem; |
213 case ELayoutEntryItem: |
204 case ELayoutEntryItem: |
214 return &iLayoutEntryItem; |
205 return &iLayoutEntryItem; |
|
206 case EOrdinalCandidateTextLayout: |
|
207 return &iOrdinalCandidateTextLayout; |
215 case EEEPWindowRect: |
208 case EEEPWindowRect: |
216 return &iEEPWindowRect; |
209 return &iEEPWindowRect; |
217 case EEEPWindowLayout: |
210 case EEEPWindowLayout: |
218 return &iEEPWindowLayout; |
211 return &iEEPWindowLayout; |
219 case ERectCoverMainPaneInputEntry: |
212 case ERectCoverMainPaneInputEntry: |
272 return &iEEPSecondHorizLineWindow; |
269 return &iEEPSecondHorizLineWindow; |
273 case EEEPFirstHorizLineWindow: |
270 case EEEPFirstHorizLineWindow: |
274 return &iEEPFirstHorizLineWindow; |
271 return &iEEPFirstHorizLineWindow; |
275 case EEEPTextColor: |
272 case EEEPTextColor: |
276 return &iEEPTextColor; |
273 return &iEEPTextColor; |
277 case EECPLayout: |
|
278 return &iEntryWithCandidateAndPopUp;//Rect; |
|
279 case ECandidateLayout: |
|
280 return &iCandidate; |
|
281 case EECandidateLayout: |
|
282 return &iECandidate; |
|
283 case EEPCandidateLayout: |
|
284 return &iEPCandidate; |
|
285 case ECharacterLayout: |
|
286 return &iCharacterLineLayout; |
|
287 case ECharacterTextLayout: |
|
288 return &iCharacterTextLayout; |
|
289 case EPopupHeightEP: |
|
290 return &iPopupRectCandidateHeight; |
|
291 case EUpArrowLayout: |
|
292 return &iUpArrowLayout; |
|
293 case EDownArrowLayout: |
|
294 return &iDownArrowLayout; |
|
295 case EScrollLayout: |
|
296 return &iScrollLayout; |
|
297 case EEntryCLayout: |
|
298 return &iEntryCLayout; |
|
299 case EEntryCPLayout: |
|
300 return &iEntryCPLayout; |
|
301 case EECWindowLayout: |
|
302 return &iECWindowLayout; |
|
303 case ECloseLayout: |
|
304 return &iCloseLayout; |
|
305 case EInputLayout: |
|
306 return &iInputLayout; |
|
307 case EInputTextLayout: |
|
308 return &iInputTextLayout; |
|
309 default: |
274 default: |
310 break; |
275 break; |
311 } |
276 } |
312 return NULL; |
277 return NULL; |
313 } |
278 } |