Symbian3/SDK/Source/GUID-FD2CDEB8-0784-4BE5-A775-170F57D71BBC.dita
changeset 0 89d6a7a84779
equal deleted inserted replaced
-1:000000000000 0:89d6a7a84779
       
     1 <?xml version="1.0" encoding="utf-8"?>
       
     2 <!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
       
     3 <!-- This component and the accompanying materials are made available under the terms of the License 
       
     4 "Eclipse Public License v1.0" which accompanies this distribution, 
       
     5 and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
       
     6 <!-- Initial Contributors:
       
     7     Nokia Corporation - initial contribution.
       
     8 Contributors: 
       
     9 -->
       
    10 <!DOCTYPE concept
       
    11   PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
       
    12 <concept id="GUID-FD2CDEB8-0784-4BE5-A775-170F57D71BBC" xml:lang="en"><title>UI controller</title><prolog><metadata><keywords/></metadata></prolog><conbody>
       
    13 <p>The term <i>UI controller</i> refers to an object derived from either <xref href="jar:GUID-759FBC7F-5384-4487-8457-A8D4B76F6AA6.jar!/html/classCAknAppUi.html" format="application/java-archive"><parmname>CAknAppUi</parmname></xref> or <xref href="jar:GUID-759FBC7F-5384-4487-8457-A8D4B76F6AA6.jar!/html/classCAknViewAppUi.html" format="application/java-archive"><parmname>CAknViewAppUi</parmname></xref>,
       
    14 depending on your UI architecture. The UI controller is a required part of
       
    15 GUI-based applications.</p>
       
    16 <p>Examples of services and responsibilities provided by the UI controller
       
    17 are as follows:</p>
       
    18 <ul>
       
    19 <li><p>control stack for <xref href="GUID-A9330FEF-C559-4E2B-B064-0151FDADEA8C.dita">event
       
    20 handling</xref></p></li>
       
    21 <li><p>construction of <xref href="GUID-DAC32BB9-C0EB-42FF-A596-C2F1A90A4BD7.dita">views</xref> for
       
    22 applications</p></li>
       
    23 <li><p>the top-level window owning <xref href="GUID-5944FFF1-79C6-4F5E-95C8-F4833AFC64AB.dita">control</xref> of
       
    24 the application</p></li>
       
    25 </ul>
       
    26 <p>For more information on the UI controller, see:</p>
       
    27 <ul>
       
    28 <li><p><xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/guide/Application-Framework-subsystem-guide/UIControlFrameworkGuide/UIControlFrameworkGuide4/index.html#ApplicationFrameworkOverview%2eUIControlFrameworkGuide4%2eappui" format="application/java-archive">The Application User Interface</xref></p>
       
    29 </li>
       
    30 <li><p><xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/guide/Application-Framework-subsystem-guide/UIControlFrameworkGuide/UIControlFrameworkGuide2/RunTimeControlHierarchy.guide.html" format="application/java-archive">The run-time control hierarchy</xref></p>
       
    31 </li>
       
    32 </ul>
       
    33 <p>The UI controller is part of the controller structure in the Model -
       
    34 View - Controller <xref href="GUID-BDDDF68F-F7C3-43AF-8B6C-C77C701FD2A9.dita">(MVC)
       
    35 design pattern</xref> used to design the architecture of many GUI-based mobile
       
    36 applications.</p>
       
    37 <p><xref href="GUID-07D2ED79-90B2-4ABC-A61F-108DAEE21955.dita">The <parmname>CAknDocument</parmname>-derived
       
    38 class</xref> of your application contains the <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/guide/Base-subsystem-guide/e32/MemoryManagement/CleanupSupport/CleanupSupportGuide3/index.html#CleanupSupportGuide3%2etoc" format="application/java-archive">first
       
    39 phase</xref> constructor of the UI controller.</p>
       
    40 <note>
       
    41 <p>The second-phase constructor is called by the application framework.</p>
       
    42 </note>
       
    43 <p>The UI controller is implemented in one of the following classes:</p>
       
    44 <ul>
       
    45 <li><p>In a <xref href="GUID-B5DE1C86-2B16-4B22-887F-7079E54A8ED6.dita">traditional
       
    46 architecture</xref> application architecture, the UI controller must be derived
       
    47 from <xref href="jar:GUID-759FBC7F-5384-4487-8457-A8D4B76F6AA6.jar!/html/classCAknAppUi.html" format="application/java-archive"><parmname>CAknAppUi</parmname></xref>.</p>
       
    48 </li>
       
    49 <li><p>In <xref href="GUID-68B999C2-0993-4804-9624-42C3D88BE5C7.dita">Symbian view architecture</xref>, the UI controller must be derived from <xref href="jar:GUID-759FBC7F-5384-4487-8457-A8D4B76F6AA6.jar!/html/classCAknViewAppUi.html" format="application/java-archive"><parmname>CAknViewAppUi</parmname></xref>.</p>
       
    50 </li>
       
    51 <li><p>In <xref href="GUID-DD88DD7B-E246-4BF2-B537-5C677728CC49.dita">dialog
       
    52 architecture</xref>, the UI controller is typically derived from <xref href="jar:GUID-759FBC7F-5384-4487-8457-A8D4B76F6AA6.jar!/html/classCAknAppUi.html" format="application/java-archive"><parmname>CAknAppUi</parmname></xref></p>
       
    53 </li>
       
    54 </ul>
       
    55 </conbody></concept>