Symbian3/SDK/Source/GUID-ED784025-4E65-4BE9-ADA8-A13427B6EA30.dita
author Dominic Pinkman <Dominic.Pinkman@Nokia.com>
Thu, 21 Jan 2010 18:18:20 +0000
changeset 0 89d6a7a84779
permissions -rw-r--r--
Initial contribution of Documentation_content according to Feature bug 1266 bug 1268 bug 1269 bug 1270 bug 1372 bug 1374 bug 1375 bug 1379 bug 1380 bug 1381 bug 1382 bug 1383 bug 1385

<?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_d0e55158_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>