Symbian3/PDK/Source/GUID-ED784025-4E65-4BE9-ADA8-A13427B6EA30.dita
author Dominic Pinkman <Dominic.Pinkman@Nokia.com>
Fri, 22 Jan 2010 18:26:19 +0000
changeset 1 25a17d01db0c
child 5 f345bda72bc4
permissions -rw-r--r--
Addition of the PDK content and example code for Documentation_content according to Feature bug 1607 and bug 1608

<?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-ED784025-4E65-4BE9-ADA8-A13427B6EA30" xml:lang="en"><title>Markable
list</title><prolog><metadata><keywords></keywords></metadata></prolog><conbody>
<p>A markable list is a selection list with the added marking feature. The
user can mark any number of items on the list while browsing it, and then
execute a single command, which is applied to all the marked items. This is
analogous to the multiple-item highlight feature used in computer GUIs.</p>
<p>The marking feature is typically applied to lists the user manages, containing
a large number of items that may be for example sent, moved, or deleted. By
marking items first and then selecting a command, the user can perform certain
operations more quickly and with less key presses than by performing the command
separately for each of the items.</p>
<p>Marked items are indicated graphically.</p>
<fig id="GUID-08F82B30-CF52-42CA-97F5-D1D3A1C48460">
<title>Markable list. Marked items are indicated graphically in the list.</title>
<image href="GUID-B142FB0F-518F-436A-83D1-57BDE9671E44_d0e80133_href.png" scale="40" placement="inline"></image>
</fig>
<p>The <b>Mark</b> and <b>Unmark</b> functions are available in the Options
menu of the markable list. Alternatively, or as a shortcut, the user can keep
the Hash (#) key pressed while using the Arrow keys and the Selection key
in the following way:</p>
<ul>
<li><p>Pressing the Hash (#) key marks the current item. This is a toggling
function, so pressing the Hash (#) key on a marked item unmarks the item. </p></li>
<li><p>Pressing an Arrow key (up or down) while holding down the Hash (#)
key marks both the current item and the one onto which the focus moves. If
the user keeps holding the Hash (#) key and scrolls further in the same direction,
all the scrolled items become marked; to unmark the items in reverse order
the user can scroll into the opposite direction while holding the Hash (#)
key down. </p></li>
<li><p>Items can be unmarked by pressing the Hash (#) key together with scrolling:
if the user starts holding the Hash (#) key down when on a marked item and
then scrolls, all the scrolled items become unmarked. </p></li>
<li><p>Several marking actions can be done subsequently. The user can mark
an item, then release the Hash (#) key, browse and move the focus onto some
other item on the list, and then mark that item. The first item remains marked,
and the ones between the two do not become marked. </p></li>
<li><p>All items become unmarked when the user exits the list, for example
by back stepping. There may be exceptions to this rule in certain applications
that require selecting items from several levels of folder hierarchy. An example
of this is creating a play list in the Media Player application. Items remain
marked if the user opens and cancels the <b>Options</b> menu, or swaps applications. </p></li>
<li><p>Pressing the Selection key when there are marked items on the list
opens the context sensitive <b>Options</b> menu containing only those functions
that apply to multiple items.</p></li>
</ul>
<p>A markable list functions exactly like a normal selection list, except
for the marking feature.</p>
<p>Devices that have the optional Edit key perform these same functions by
using the Edit key and arrow keys instead of the Hash (#) key.</p>
<p>The user may access the <b>Options</b> menu to perform functions on all
marked items at once. When user has one or more items marked, <b>Options</b> menu
does not contain items that apply to one item only (such as <b>Open</b>).
Exceptions are Help and Exit, which should appear in every <b>Options</b> menu.
Appropriate error handling must be designed for functions that do not apply
to some or all of the marked items.</p>
<ul>
<li><p>When executing a function, if any of the items are marked, all the
marked items are affected by the function. If the focus is on an item that
is not marked, the function does not affect that item. </p></li>
<li><p>After the selected function is successfully done, all items are unmarked.
In an error case, when the function cannot be applied, the marks should remain
in place.</p></li>
</ul>
<p>The Options menu includes the marking and unmarking functions in a submenu
so that any user can find the feature. The submenu has also the <b>Mark all</b> and <b>Unmark</b> all
options.</p>
<p>For other keypad actions, see <xref href="GUID-0822B030-E776-4BD5-B9C9-23D3821BCE1F.dita">Selection
list</xref>.</p>
<section><title>Using markable lists
in C++ applications</title><p>The API to use for markable lists is the Lists
API. For implementation information, see Using
the Lists API.</p></section>
</conbody></concept>