Symbian3/SDK/Source/GUID-6167C2F2-BC5B-5B10-BD5D-7702BE4112F6.dita
author Dominic Pinkman <dominic.pinkman@nokia.com>
Fri, 11 Jun 2010 12:39:03 +0100
changeset 8 ae94777fff8f
parent 7 51a74ef9ed63
permissions -rw-r--r--
Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License 
"Eclipse Public License v1.0" which accompanies this distribution, 
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<!-- Initial Contributors:
    Nokia Corporation - initial contribution.
Contributors: 
-->
<!DOCTYPE concept
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept id="GUID-6167C2F2-BC5B-5B10-BD5D-7702BE4112F6" xml:lang="en"><title>View
Server Tutorial</title><prolog><metadata><keywords/></metadata></prolog><conbody>
<p>The UI Control Framework <xref href="GUID-6C16417B-5B37-5310-B59A-750D971AA6D4.dita">(CONE)</xref> provides <xref href="GUID-3AC2CDAC-0291-309F-A020-049BC9F2CF90.dita"><apiname>CCoeAppUi</apiname></xref> that
provides an interface to the View Server, which enables seamless switching
between different views across various applications. </p>

<section><title>Introduction</title> <p>The UI framework built on Cone/uikon
can make a choice to use the View Server. </p> <p>The view architecture allows
applications to make and receive requests to show a particular view of their
data. It allows applications to have integration between their user interfaces.
This particularly allows the user to navigate through the UI on the basis
of the task they are working on, rather than perceiving separate applications.
For example, an application provides a view of a given Contact, any other
application may display a contact using that view. </p> <p>Views are UI controls
that are derived from the <xref href="GUID-2C5E3F6C-6679-3914-9736-62296E7715A7.dita"><apiname>MCoeView</apiname></xref> abstract view interface
and display application data. Typically views are top-level window-owning
controls. Each view is given a unique identifier of type <xref href="GUID-3DEA9A17-CB50-3DCD-87AC-0E91B377FB0E.dita"><apiname>TVwsViewId</apiname></xref>. <xref href="GUID-3DEA9A17-CB50-3DCD-87AC-0E91B377FB0E.dita"><apiname>TVwsViewId</apiname></xref> is
a combination of the UID of the application and the UID of the view within
the application. An application participating in the view switching must complete
the steps given in the procedure section.</p> </section>
<section><title>Procedure</title> <ol id="GUID-5DC514F9-9040-5D61-BC2C-FE04BA11B51C">
<li id="GUID-1696E5F0-DB4A-5F40-B6E8-810FA93DC5A5"><p><xref href="GUID-AC6FCBB0-E4FD-4D30-B000-1F652B2EE96A.dita">Create
an instance of <apiname>CCoeAppUi</apiname></xref> </p> </li>
<li id="GUID-441C5876-D063-568F-A814-B85464DBCE27"><p><xref href="GUID-13D2B45C-3A2A-497A-8D6A-87BE34D1DE69.dita">Implement
the observer functions to get notification on events, if required.</xref> </p> </li>
<li id="GUID-32128AF4-8773-5105-B5C0-490668AB08C4"><p><xref href="GUID-A399508A-DE6A-490D-9BFB-4FCF56FF9D4C.dita">Derive
a class from the <apiname>MCoeView</apiname> class.</xref> </p> </li>
<li id="GUID-C95EBECB-3503-5BB6-B0CC-8964C76074A8"><p><xref href="GUID-6FD4E7A4-D215-4CFB-BC7A-23065DE95C5C.dita">Add
the view to the control stack to receive key events.</xref> </p> </li>
<li id="GUID-9996BF57-3220-5D74-B7A1-5CD56D63F905"><p><xref href="GUID-940E3C48-D0ED-419A-9172-E4856C6CA809.dita">Register
the view with the View Server. </xref></p> </li>
<li id="GUID-C571AF24-46FA-517C-A765-1745973FE8DF"><p>Perform one or more
of the following tasks: </p> <ol id="GUID-A24F5604-C2CF-52DF-BDD4-BF4FDB36325B">
<li id="GUID-63CFD000-82CB-5842-9AF4-05FA34C0E24C"><p><xref href="GUID-2D6689C2-F17D-48A8-8EC9-3D83BCAA3681.dita">Activate
a view through the client session.</xref> </p> <p>If the view which has to
be activated is not registered with the server when an activation request
arrives, the view server starts the application associated with that view. </p> </li>
<li id="GUID-18668608-892D-57CF-9619-B5D141E5AA37"><p><xref href="GUID-210A181E-5EB6-4626-9E7E-8761A2272D79.dita">Set
a view as a default view.</xref> </p> </li>
<li id="GUID-6A1FBF71-8F52-58C2-AEFA-FC4ED601CDD1"><p><xref href="GUID-4ADDDAFE-0941-4787-B07B-F5B7D8D5B1AA.dita">Deregister
a view</xref>, if required. </p> </li>
</ol> </li>
</ol> </section>
</conbody><related-links>
<link href="GUID-830E40D0-7DEE-5EFB-BCC6-EC0AA7FF7A02.dita"><linktext>View Server
Overview</linktext></link>
<link href="GUID-37E8A48E-09B8-5958-9263-B33EDAE3F7C6.dita"><linktext>Control Stack</linktext>
</link>
</related-links></concept>