Symbian3/SDK/Source/GUID-D7600D93-CFB8-565D-8200-7082B2CF1791.dita
author Dominic Pinkman <dominic.pinkman@nokia.com>
Tue, 20 Jul 2010 12:00:49 +0100
changeset 13 48780e181b38
parent 0 89d6a7a84779
permissions -rw-r--r--
Week 28 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 1897 and Bug 1522.

<?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-D7600D93-CFB8-565D-8200-7082B2CF1791" xml:lang="en"><title>User
Interface Data MTM</title><prolog><metadata><keywords/></metadata></prolog><conbody>
<p>UI MTM libraries can be quite large, and often there are functions that
Messaging applications need to access often and rapidly. To improve memory
efficiency, these functions are split off into another DLL, called the UI
Data MTM that can be easily kept in memory without the extra overhead of the
UI MTM. </p>
<section><title>UI Data MTM base class</title> <p>The base class for a UI
Data MTM is <xref href="GUID-899C6D87-5712-34A7-902C-EA452894700C.dita"><apiname>CBaseMtmUiData</apiname></xref>. The implementation of UI Data
MTMs is relatively simple, as they contain little more than functions to return
the required icons and extra menu items. </p> <p>UI Data MTMs offer the following
capabilities: </p> <ul>
<li id="GUID-EF22528E-D4EA-57B4-84FC-BD8E44D742DA"><p> <b>Provide MTM-specific
icons for Message Server entries</b>  </p> <p>Provide bitmap icons for messages,
folders, and services for display in the various folder views. For each icon,
an array of bitmaps should be available, giving the icon in a number of sizes. </p> </li>
<li id="GUID-2830B9E2-B9D1-50AF-B6E9-43D187BE053A"><p> <b>Provide user interface
text</b>  </p> <p>Provide command captions for MTM-specific functions that
the Messaging client application can dynamically add to menus and dialog controls.
A function ID is associated with each caption to identify the MTM-specific
function that should be invoked when the command is chosen. This data is encapsulated
in a resource of the <codeph>MTUD_FUNCTION</codeph> type. </p> </li>
<li id="GUID-24B76538-A4BB-5996-9187-EC03393C35A9"><p> <b>Verification of
MTM functions</b>  </p> <p>Validate the specified functions that are available
on a particular entry, so that a Messaging client application can process. </p> <p>It
is intended that client applications use the <xref href="GUID-F5466277-25C7-31BD-8129-A0FF3D84FC03.dita"><apiname>OperationSupportedL()</apiname></xref> function
to dynamically set the user interface features that are available depending
on the entry currently selected within the application. For example, menu
items that do not apply to particular entries could be greyed out. </p> </li>
</ul> <p>The <xref href="GUID-899C6D87-5712-34A7-902C-EA452894700C.dita"><apiname>CBaseMtmUiData</apiname></xref> class provides the virtual
functions for overriding in derived classes.</p> </section>
</conbody><related-links>
<link href="GUID-59217FA7-3078-53CA-88B3-78D6FB788271.dita"><linktext>MTM     
           overview</linktext></link>
<link href="GUID-BAD138D5-2914-5C6E-9FA4-F7A3CCB85E6D.dita"><linktext>MTM     
           Capabilities</linktext></link>
<link href="GUID-1E2DB50A-D8D7-595D-8448-77F057655E82.dita"><linktext>Writing a
UI Data MTM </linktext></link>
</related-links></concept>