12 <concept id="GUID-A3BCC33F-D11B-4F98-BCC3-9A06381A02E7" xml:lang="en"><title>Constructing |
12 <concept id="GUID-A3BCC33F-D11B-4F98-BCC3-9A06381A02E7" xml:lang="en"><title>Constructing |
13 the view controller in the view architecture</title><prolog><metadata><keywords/></metadata></prolog><conbody> |
13 the view controller in the view architecture</title><prolog><metadata><keywords/></metadata></prolog><conbody> |
14 <p>Each view controller acts like a small UI controller.</p> |
14 <p>Each view controller acts like a small UI controller.</p> |
15 <p>The call on the first phase constructor of the view controller occurs |
15 <p>The call on the first phase constructor of the view controller occurs |
16 in the<xref href="GUID-FD2CDEB8-0784-4BE5-A775-170F57D71BBC.dita"> UI controller</xref>.</p> |
16 in the<xref href="GUID-FD2CDEB8-0784-4BE5-A775-170F57D71BBC.dita"> UI controller</xref>.</p> |
17 <p>The methods you need to implement in your <xref href="jar:GUID-759FBC7F-5384-4487-8457-A8D4B76F6AA6.jar!/html/classCAknView.html" format="application/java-archive"><parmname>CAknView</parmname></xref>-derived |
17 <p>The methods you need to implement in your <xref href="GUID-11967EBB-7439-3775-B287-7560ECA0AF1F.dita"><apiname>CAknView</apiname></xref>-derived |
18 class are as follows:</p> |
18 class are as follows:</p> |
19 <ul> |
19 <ul> |
20 <li><p>C++ default constructor, which cannot contain any code that |
20 <li><p>C++ default constructor, which cannot contain any code that |
21 might leave. A common implementation is:</p> |
21 might leave. A common implementation is:</p> |
22 <itemgroup> |
22 <itemgroup> |
43 CleanupStack::PushL( self ); |
43 CleanupStack::PushL( self ); |
44 self->ConstructL( aRect ); |
44 self->ConstructL( aRect ); |
45 return self; |
45 return self; |
46 } |
46 } |
47 </codeblock> |
47 </codeblock> |
48 <p>The declarations for <parmname>CMyViewAppView::NewL</parmname> and <parmname>CMyViewAppView::NewLC</parmname> in |
48 <p>The declarations for <parmname>CMyViewAppView::NewL()</parmname> and <parmname>CMyViewAppView::NewLC()</parmname> in |
49 the class header file needs to be public to support the construction method |
49 the class header file needs to be public to support the construction method |
50 required. </p> |
50 required. </p> |
51 <p>In this approach, <parmname>CMyViewAppView::NewL</parmname> is called |
51 <p>In this approach, <parmname>CMyViewAppView::NewL()</parmname> is called |
52 from the UI controller. It creates a view object by calling <parmname>CMyViewAppView::NewLC</parmname>. <parmname>CMyViewAppView::NewLC</parmname> calls new (<parmname>ELeave</parmname>) on the C++ default constructor <parmname>CMyViewAppView</parmname> to |
52 from the UI controller. It creates a view object by calling <parmname>CMyViewAppView::NewLC()</parmname>. <parmname>CMyViewAppView::NewLC()</parmname> calls new (<parmname>ELeave</parmname>) on the C++ default constructor <parmname>CMyViewAppView</parmname> to |
53 create the object (and leave if it cannot), <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/reference/reference-cpp/Kernel_Architecture_2/CCleanupClass.html#%3a%3aCCleanup%3a%3aPushL%28CBase%20%2a%29" format="application/java-archive">pushes</xref> a pointer to the clean-up stack in case the second phase construction method |
53 create the object (and leave if it cannot), <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/reference/reference-cpp/Kernel_Architecture_2/CCleanupClass.html#%3a%3aCCleanup%3a%3aPushL%28CBase%20%2a%29" format="application/java-archive">pushes</xref> a pointer to the clean-up stack in case the second phase construction method |
54 leaves, and then calls the second phase construction method of the object. |
54 leaves, and then calls the second phase construction method of the object. |
55 When it returns to <parmname>CMyViewAppView::NewL</parmname>, the pointer |
55 When it returns to <parmname>CMyViewAppView::NewL()</parmname>, the pointer |
56 pushed to the cleanup stack is <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/reference/reference-cpp/Kernel_Architecture_2/CCleanupClass.html#%3a%3aCCleanup%3a%3aPop%28%29" format="application/java-archive">removed</xref>.</p> |
56 pushed to the cleanup stack is <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/reference/reference-cpp/Kernel_Architecture_2/CCleanupClass.html#%3a%3aCCleanup%3a%3aPop%28%29" format="application/java-archive">removed</xref>.</p> |
57 </itemgroup> |
57 </itemgroup> |
58 </li> |
58 </li> |
59 <li><p>Symbian 2nd phase constructor with code that might leave. |
59 <li><p>Symbian 2nd phase constructor with code that might leave. |
60 A common implementation is:</p> |
60 A common implementation is:</p> |
63 { |
63 { |
64 // construct r_name32 resources |
64 // construct r_name32 resources |
65 BaseConstructL(r_name32 ); |
65 BaseConstructL(r_name32 ); |
66 } |
66 } |
67 </codeblock> |
67 </codeblock> |
68 <p><parmname>CMyViewAppView::ConstructL</parmname> is a public class providing |
68 <p><parmname>CMyViewAppView::ConstructL()</parmname> is a public class |
69 the second phase construction that accepts the rectangle the view is drawn |
69 providing the second phase construction that accepts the rectangle the view |
70 to.</p> |
70 is drawn to.</p> |
71 <p><xref href="jar:GUID-759FBC7F-5384-4487-8457-A8D4B76F6AA6.jar!/html/classCAknView.html#04bb841d875636d632ada39cb12514c4" format="application/java-archive"><parmname>CAknView::BaseConstructL</parmname></xref> initializes this view with standard values. It accepts the |
71 <p><xref href="GUID-11967EBB-7439-3775-B287-7560ECA0AF1F.dita#GUID-11967EBB-7439-3775-B287-7560ECA0AF1F/GUID-B9CF9FAC-AA26-3787-83E5-71030E221347"><apiname>CAknView::BaseConstructL()</apiname></xref> initializes this view |
72 symbolic ID name of a resource from the resource file.</p> |
72 with standard values. It accepts the symbolic ID name of a resource from the |
|
73 resource file.</p> |
73 </itemgroup> |
74 </itemgroup> |
74 </li> |
75 </li> |
75 <li><p>a method for returning the UID for the view. A common implementation |
76 <li><p>a method for returning the UID for the view. A common implementation |
76 is:</p> |
77 is:</p> |
77 <itemgroup> |
78 <itemgroup> |
80 { |
81 { |
81 return KViewId; |
82 return KViewId; |
82 } |
83 } |
83 |
84 |
84 </codeblock> |
85 </codeblock> |
85 <p><parmname>CMyViewAppView::Id()</parmname> is the override of <xref href="jar:GUID-759FBC7F-5384-4487-8457-A8D4B76F6AA6.jar!/html/classCAknView.html#71e3a172cd418a5d73071f598fe8d26d" format="application/java-archive"><parmname>CAknView::ID</parmname></xref> to return the UID of the view</p> |
86 <p><parmname>CMyViewAppView::Id()</parmname> is the override of <xref href="GUID-11967EBB-7439-3775-B287-7560ECA0AF1F.dita#GUID-11967EBB-7439-3775-B287-7560ECA0AF1F/GUID-82E37EFD-FCCF-3D3E-AA36-7E20A688C980"><apiname>CAknView::ID()</apiname></xref> to |
|
87 return the UID of the view</p> |
86 <p><parmname>KViewId</parmname> is defined somewhere in a header file, |
88 <p><parmname>KViewId</parmname> is defined somewhere in a header file, |
87 and is unique to this application</p> |
89 and is unique to this application</p> |
88 </itemgroup> |
90 </itemgroup> |
89 </li> |
91 </li> |
90 </ul> |
92 </ul> |
91 <section id="GUID-952D9762-EA63-489D-9698-FC504BD73001"><title>Scalability</title> |
93 <section id="GUID-952D9762-EA63-489D-9698-FC504BD73001"><title>Scalability</title> |
92 <p>If you wish to support <xref href="GUID-B02C762B-C452-4184-ABEA-4753E6CD47D2.dita">scalability</xref> in |
94 <p>If you wish to support <xref href="GUID-B02C762B-C452-4184-ABEA-4753E6CD47D2.dita">scalability</xref> in |
93 your application, then you need to implement <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/reference/reference-cpp/UIKON/CEikAppUiClass.html#%3a%3aCEikAppUi%3a%3aHandleResourceChangeL%28%29" format="application/java-archive"><parmname>CEikAppUi::HandleResourceChangeL</parmname></xref> in the <xref href="GUID-FD2CDEB8-0784-4BE5-A775-170F57D71BBC.dita"> UI |
95 your application, then you need to implement <xref href="GUID-1185F595-0488-3E93-8D60-6B3A1A3AC32E.dita#GUID-1185F595-0488-3E93-8D60-6B3A1A3AC32E/GUID-7B8E4FA3-29F4-39DF-BBB3-71E7AB2433C4"><apiname>CEikAppUi::HandleResourceChangeL()</apiname></xref> in |
94 controller</xref>, and then a <parmname>HandleClientRectChange</parmname> method |
96 the <xref href="GUID-FD2CDEB8-0784-4BE5-A775-170F57D71BBC.dita"> UI controller</xref>, |
95 in the view controller.</p> |
97 and then a <parmname>HandleClientRectChange</parmname> method in the view |
|
98 controller.</p> |
96 <p>A common implementation is as follows:</p> |
99 <p>A common implementation is as follows:</p> |
97 <codeblock id="GUID-F5BC393D-EA47-45B2-8892-B71CE934F5B6" xml:space="preserve"> |
100 <codeblock id="GUID-F5BC393D-EA47-45B2-8892-B71CE934F5B6" xml:space="preserve"> |
98 void CMyViewAppView::HandleClientRectChange() |
101 void CMyViewAppView::HandleClientRectChange() |
99 { |
102 { |
100 if ( iContainer ) |
103 if ( iContainer ) |
103 } |
106 } |
104 } |
107 } |
105 |
108 |
106 </codeblock> |
109 </codeblock> |
107 <p>, where</p> |
110 <p>, where</p> |
108 <p><parmname>CMyViewAppView::HandleClientRectChange</parmname> calls <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/reference/reference-cpp/Control_Environment/CCoeControlClass.html#%3a%3aCCoeControl%3a%3aSetRect%28const%20TRect%20%26amp%3b%29" format="application/java-archive"><parmname>CCoeControl::SetRect(aRect)</parmname></xref> to set the |
111 <p><parmname>CMyViewAppView::HandleClientRectChange()</parmname> calls <xref href="GUID-B06F99BD-F032-3B87-AB26-5DD6EBE8C160.dita#GUID-B06F99BD-F032-3B87-AB26-5DD6EBE8C160/GUID-AC806401-86C7-308A-9D18-39085CB8D877"><apiname>CCoeControl::SetRect(aRect)</apiname></xref> to |
109 window size according to the requirements of the mobile device.</p> |
112 set the window size according to the requirements of the mobile device.</p> |
110 </section> |
113 </section> |
111 <section id="GUID-DC760F92-C154-4DAA-AAD1-A0C02766C6B0"><title>Activating and |
114 <section id="GUID-DC760F92-C154-4DAA-AAD1-A0C02766C6B0"><title>Activating and |
112 deactivating views</title> |
115 deactivating views</title> |
113 <p>In order for a view to be displayed, it needs to be activated by <xref href="jar:GUID-759FBC7F-5384-4487-8457-A8D4B76F6AA6.jar!/html/classCAknView.html#486d490d911ce5e9495e0ee19b0442db" format="application/java-archive"><parmname>CAknView::DoActivateL</parmname></xref>. The override of this method in the view controller must create |
116 <p>In order for a view to be displayed, it needs to be activated by <xref href="GUID-11967EBB-7439-3775-B287-7560ECA0AF1F.dita#GUID-11967EBB-7439-3775-B287-7560ECA0AF1F/GUID-F6105D54-1C2A-36C0-8522-50DAB45FEF67"><apiname>CAknView::DoActivateL()</apiname></xref>. |
114 a <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/reference/reference-cpp/Control_Environment/CCoeControlClass.html" format="application/java-archive"><parmname>CCoeControl</parmname></xref>-derived view to display visual |
117 The override of this method in the view controller must create a <xref href="GUID-B06F99BD-F032-3B87-AB26-5DD6EBE8C160.dita"><apiname>CCoeControl</apiname></xref>-derived |
115 content to mobile device users. The <parmname>DoActivateL()</parmname> call |
118 view to display visual content to mobile device users. The <parmname>DoActivateL()</parmname> call |
116 must be prepared to handle the case where it is called while the view is already |
119 must be prepared to handle the case where it is called while the view is already |
117 active.</p> |
120 active.</p> |
118 <p>If the view is not published for external use, or does not handle message |
121 <p>If the view is not published for external use, or does not handle message |
119 parameters, a simple check and return if the view is already active is sufficient.</p> |
122 parameters, a simple check and return if the view is already active is sufficient.</p> |
120 <p>A common implementation is as follows:</p> |
123 <p>A common implementation is as follows:</p> |
134 // Message handling would take place here. |
137 // Message handling would take place here. |
135 } |
138 } |
136 </codeblock> |
139 </codeblock> |
137 <p>, where</p> |
140 <p>, where</p> |
138 <ul> |
141 <ul> |
139 <li><p><parmname>CMyViewAppView::DoActivateL</parmname> is the override |
142 <li><p><parmname>CMyViewAppView::DoActivateL()</parmname> is the |
140 for <xref href="jar:GUID-759FBC7F-5384-4487-8457-A8D4B76F6AA6.jar!/html/classCAknView.html#486d490d911ce5e9495e0ee19b0442db" format="application/java-archive"><parmname>CAknView::DoActivateL</parmname></xref> for the application.</p></li> |
143 override for <xref href="GUID-11967EBB-7439-3775-B287-7560ECA0AF1F.dita#GUID-11967EBB-7439-3775-B287-7560ECA0AF1F/GUID-F6105D54-1C2A-36C0-8522-50DAB45FEF67"><apiname>CAknView::DoActivateL()</apiname></xref> for the application.</p> |
|
144 </li> |
141 <li><p><parmname>if (!iContainer)</parmname> checks to see if the |
145 <li><p><parmname>if (!iContainer)</parmname> checks to see if the |
142 view already exists.</p></li> |
146 view already exists.</p></li> |
143 <li><p><parmname>iContainer = new (ELeave) CMyViewAppContainer;</parmname> calls |
147 <li><p><parmname>iContainer = new (ELeave) CMyViewAppContainer;</parmname> calls |
144 the first phase constructor of the <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/reference/reference-cpp/Control_Environment/CCoeControlClass.html" format="application/java-archive"><parmname>CCoeControl</parmname></xref>-derived |
148 the first phase constructor of the <xref href="GUID-B06F99BD-F032-3B87-AB26-5DD6EBE8C160.dita"><apiname>CCoeControl</apiname></xref>-derived |
145 class that provides the view.</p></li> |
149 class that provides the view.</p></li> |
146 <li><p><xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/reference/reference-cpp/Control_Environment/CCoeControlClass.html#%3a%3aCCoeControl%3a%3aSetMopParent%28MObjectProvider%20%2a%29" format="application/java-archive"><parmname>iContainer->SetMopParent(this);</parmname></xref> sets the |
150 <li><p><xref href="GUID-1E95CF3C-A54A-3073-A7A9-6DC56A6B89E2.dita"><apiname>iContainer->SetMopParent(this);</apiname></xref> sets the |
147 context for the view being created. In this case, it assigns the <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/reference/reference-cpp/Control_Environment/CCoeControlClass.html" format="application/java-archive"><parmname>CCoeControl</parmname></xref>-derived view to the view controller.</p> |
151 context for the view being created. In this case, it assigns the <xref href="GUID-B06F99BD-F032-3B87-AB26-5DD6EBE8C160.dita"><apiname>CCoeControl</apiname></xref>-derived |
148 </li> |
152 view to the view controller.</p></li> |
149 <li><p><parmname>iContainer->ConstructL( ClientRect() )</parmname> calls |
153 <li><p><parmname>iContainer->ConstructL( ClientRect() )</parmname> calls |
150 the second phase constructor of the <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/reference/reference-cpp/Control_Environment/CCoeControlClass.html" format="application/java-archive"><parmname>CCoeControl</parmname></xref>-derived |
154 the second phase constructor of the <xref href="GUID-B06F99BD-F032-3B87-AB26-5DD6EBE8C160.dita"><apiname>CCoeControl</apiname></xref>-derived |
151 class that provides the view.</p></li> |
155 class that provides the view.</p></li> |
152 <li><p><xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/reference/reference-cpp/Control_Environment/CCoeAppUiClass.html#%3a%3aCCoeAppUi%3a%3aAddToStackL%28CCoeControl%20%2a%2cTInt%2cTInt%29" format="application/java-archive"><parmname>AppUi()->AddToStackL( *this, iContainer );</parmname></xref> adds |
156 <li><p><xref href="GUID-18937B25-9AFE-36E2-BA5F-A6716DCD6F39.dita"><apiname>AppUi()->AddToStackL( *this, iContainer );</apiname></xref> adds |
153 the <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/reference/reference-cpp/Control_Environment/CCoeControlClass.html" format="application/java-archive"><parmname>CCoeControl</parmname></xref>-derived view to the control |
157 the <xref href="GUID-B06F99BD-F032-3B87-AB26-5DD6EBE8C160.dita"><apiname>CCoeControl</apiname></xref>-derived view to the control stack for <xref href="GUID-542550FA-F9F1-46D6-8182-6E7FAA013572.dita">key event handling.</xref></p> |
154 stack for <xref href="GUID-542550FA-F9F1-46D6-8182-6E7FAA013572.dita">key event |
158 </li> |
155 handling.</xref></p></li> |
|
156 </ul> |
159 </ul> |
157 <p>The view architecture supports an automatic recovery mechanism if <xref href="jar:GUID-759FBC7F-5384-4487-8457-A8D4B76F6AA6.jar!/html/classCAknView.html#486d490d911ce5e9495e0ee19b0442db" format="application/java-archive"><parmname>CAknView::DoActivateL()</parmname></xref> leaves. The Symbian platform calls <xref href="jar:GUID-759FBC7F-5384-4487-8457-A8D4B76F6AA6.jar!/html/classCAknView.html#f47363eacbe46c5827282407b354b535" format="application/java-archive"><parmname>CAknView::DoDeactivate()</parmname></xref> in |
160 <p>The view architecture supports an automatic recovery mechanism if <xref href="GUID-11967EBB-7439-3775-B287-7560ECA0AF1F.dita#GUID-11967EBB-7439-3775-B287-7560ECA0AF1F/GUID-F6105D54-1C2A-36C0-8522-50DAB45FEF67"><apiname>CAknView::DoActivateL()</apiname></xref> leaves. |
|
161 The Symbian platform calls <xref href="GUID-11967EBB-7439-3775-B287-7560ECA0AF1F.dita#GUID-11967EBB-7439-3775-B287-7560ECA0AF1F/GUID-7F1B73A0-098D-3FDB-AD2E-D4901700AF02"><apiname>CAknView::DoDeactivate()</apiname></xref> in |
158 the view that has left, reinstates the previous view of the application, and |
162 the view that has left, reinstates the previous view of the application, and |
159 returns to the view that was just displayed. If the application had no previous |
163 returns to the view that was just displayed. If the application had no previous |
160 view, it exits. If the application’s previous view was the same as the activating |
164 view, it exits. If the application’s previous view was the same as the activating |
161 view (that is, the view is reactivated with a new message), the application |
165 view (that is, the view is reactivated with a new message), the application |
162 attempts to recover to the default view.</p> |
166 attempts to recover to the default view.</p> |
164 in the <parmname>DoActivateL()</parmname> methods. The one situation where |
168 in the <parmname>DoActivateL()</parmname> methods. The one situation where |
165 you may consider something more complex is when the view can be reactivated |
169 you may consider something more complex is when the view can be reactivated |
166 (that is, activated with a new message while already active). In this case, |
170 (that is, activated with a new message while already active). In this case, |
167 the view may attempt a more complex strategy to preserve the existing state |
171 the view may attempt a more complex strategy to preserve the existing state |
168 if a leave happens during the attempt to handle the new message.</p> |
172 if a leave happens during the attempt to handle the new message.</p> |
169 <p>To destroy the <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/reference/reference-cpp/Control_Environment/CCoeControlClass.html" format="application/java-archive"><parmname>CCoeControl</parmname></xref>-derived |
173 <p>To destroy the <xref href="GUID-B06F99BD-F032-3B87-AB26-5DD6EBE8C160.dita"><apiname>CCoeControl</apiname></xref>-derived control in a view |
170 control in a view control, you must override <xref href="jar:GUID-759FBC7F-5384-4487-8457-A8D4B76F6AA6.jar!/html/classCAknView.html#f47363eacbe46c5827282407b354b535" format="application/java-archive"><parmname>CAknView::DoDeactivate</parmname></xref>. |
174 control, you must override <xref href="GUID-11967EBB-7439-3775-B287-7560ECA0AF1F.dita#GUID-11967EBB-7439-3775-B287-7560ECA0AF1F/GUID-7F1B73A0-098D-3FDB-AD2E-D4901700AF02"><apiname>CAknView::DoDeactivate()</apiname></xref>. It |
171 It is called when the application exits, or another view has been activated |
175 is called when the application exits, or another view has been activated and |
172 and the previous active window needs to be shut down. This order makes view |
176 the previous active window needs to be shut down. This order makes view switching |
173 switching fast. In <parmname>DoDeactivate</parmname> the view is removed from |
177 fast. In <parmname>DoDeactivate</parmname> the view is removed from the stack |
174 the stack and therefore the view’s container and its controls are destroyed. |
178 and therefore the view’s container and its controls are destroyed. This function |
175 This function must not leave.</p> |
179 must not leave.</p> |
176 <p>A common implementation is as follows:</p> |
180 <p>A common implementation is as follows:</p> |
177 <codeblock id="GUID-01F7257D-47C2-4A42-9717-97D3913F3AB0" xml:space="preserve"> |
181 <codeblock id="GUID-01F7257D-47C2-4A42-9717-97D3913F3AB0" xml:space="preserve"> |
178 void CMyViewAppView::DoDeactivate() |
182 void CMyViewAppView::DoDeactivate() |
179 { |
183 { |
180 if ( iContainer ) |
184 if ( iContainer ) |
185 delete iContainer; |
189 delete iContainer; |
186 iContainer = NULL; |
190 iContainer = NULL; |
187 }</codeblock> |
191 }</codeblock> |
188 <p>, where</p> |
192 <p>, where</p> |
189 <ul> |
193 <ul> |
190 <li><p><parmname>CMyViewAppView::DoDeactivateL</parmname> is the |
194 <li><p><parmname>CMyViewAppView::DoDeactivateL()</parmname> is the |
191 override for <xref href="jar:GUID-759FBC7F-5384-4487-8457-A8D4B76F6AA6.jar!/html/classCAknView.html#f47363eacbe46c5827282407b354b535" format="application/java-archive"><parmname>CAknView::DoDeactivateL</parmname></xref> for |
195 override for <xref href="GUID-11967EBB-7439-3775-B287-7560ECA0AF1F.dita#GUID-11967EBB-7439-3775-B287-7560ECA0AF1F/GUID-F6E07F12-FAB3-3CB8-AE1F-3F4E7023089A"><apiname>CAknView::DoDeactivateL()</apiname></xref> for the application.</p> |
192 the application.</p></li> |
196 </li> |
193 <li><p><parmname>if (!iContainer)</parmname> checks to see if the |
197 <li><p><parmname>if (!iContainer)</parmname> checks to see if the |
194 view already exists.</p></li> |
198 view already exists.</p></li> |
195 <li><p><xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/reference/reference-cpp/Control_Environment/CCoeAppUiClass.html#%3a%3aCCoeAppUi%3a%3aRemoveFromViewStack%28const%20MCoeView%20%26amp%3b%2cCCoeControl%20%2a%29" format="application/java-archive"><parmname>AppUi()->RemoveFromViewStack( *this, iContainer );</parmname></xref> removes |
199 <li><p><xref href="GUID-67932EAC-2A97-393F-9719-894D5764B315.dita"><apiname>AppUi()->RemoveFromViewStack( *this, iContainer |
196 the <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/reference/reference-cpp/Control_Environment/CCoeControlClass.html" format="application/java-archive"><parmname>CCoeControl</parmname></xref>-derived view from the control |
200 );</apiname></xref> removes the <xref href="GUID-B06F99BD-F032-3B87-AB26-5DD6EBE8C160.dita"><apiname>CCoeControl</apiname></xref>-derived view from |
197 stack.</p></li> |
201 the control stack.</p></li> |
198 <li><p><parmname>delete iContainer;</parmname> deletes the <parmname>CCoeControl</parmname>-derived |
202 <li><p><parmname>delete iContainer;</parmname> deletes the <parmname>CCoeControl</parmname>-derived |
199 view.</p></li> |
203 view.</p></li> |
200 </ul> |
204 </ul> |
201 </section> |
205 </section> |
202 </conbody></concept> |
206 </conbody></concept> |