|
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 --> <!DOCTYPE concept PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd"><concept id="GUID-ED784025-4E65-4BE9-ADA8-A13427B6EA30" xml:lang="en"><title>Markable |
|
10 list</title><prolog><metadata><keywords></keywords></metadata></prolog><conbody> |
|
11 <p>A markable list is a selection list with the added marking feature. The |
|
12 user can mark any number of items on the list while browsing it, and then |
|
13 execute a single command, which is applied to all the marked items. This is |
|
14 analogous to the multiple-item highlight feature used in computer GUIs.</p> |
|
15 <p>The marking feature is typically applied to lists the user manages, containing |
|
16 a large number of items that may be for example sent, moved, or deleted. By |
|
17 marking items first and then selecting a command, the user can perform certain |
|
18 operations more quickly and with less key presses than by performing the command |
|
19 separately for each of the items.</p> |
|
20 <p>Marked items are indicated graphically.</p> |
|
21 <fig id="GUID-08F82B30-CF52-42CA-97F5-D1D3A1C48460"> |
|
22 <title>Markable list. Marked items are indicated graphically in the list.</title> |
|
23 <image href="GUID-B142FB0F-518F-436A-83D1-57BDE9671E44_d0e80133_href.png" scale="40" placement="inline"></image> |
|
24 </fig> |
|
25 <p>The <b>Mark</b> and <b>Unmark</b> functions are available in the Options |
|
26 menu of the markable list. Alternatively, or as a shortcut, the user can keep |
|
27 the Hash (#) key pressed while using the Arrow keys and the Selection key |
|
28 in the following way:</p> |
|
29 <ul> |
|
30 <li><p>Pressing the Hash (#) key marks the current item. This is a toggling |
|
31 function, so pressing the Hash (#) key on a marked item unmarks the item. </p></li> |
|
32 <li><p>Pressing an Arrow key (up or down) while holding down the Hash (#) |
|
33 key marks both the current item and the one onto which the focus moves. If |
|
34 the user keeps holding the Hash (#) key and scrolls further in the same direction, |
|
35 all the scrolled items become marked; to unmark the items in reverse order |
|
36 the user can scroll into the opposite direction while holding the Hash (#) |
|
37 key down. </p></li> |
|
38 <li><p>Items can be unmarked by pressing the Hash (#) key together with scrolling: |
|
39 if the user starts holding the Hash (#) key down when on a marked item and |
|
40 then scrolls, all the scrolled items become unmarked. </p></li> |
|
41 <li><p>Several marking actions can be done subsequently. The user can mark |
|
42 an item, then release the Hash (#) key, browse and move the focus onto some |
|
43 other item on the list, and then mark that item. The first item remains marked, |
|
44 and the ones between the two do not become marked. </p></li> |
|
45 <li><p>All items become unmarked when the user exits the list, for example |
|
46 by back stepping. There may be exceptions to this rule in certain applications |
|
47 that require selecting items from several levels of folder hierarchy. An example |
|
48 of this is creating a play list in the Media Player application. Items remain |
|
49 marked if the user opens and cancels the <b>Options</b> menu, or swaps applications. </p></li> |
|
50 <li><p>Pressing the Selection key when there are marked items on the list |
|
51 opens the context sensitive <b>Options</b> menu containing only those functions |
|
52 that apply to multiple items.</p></li> |
|
53 </ul> |
|
54 <p>A markable list functions exactly like a normal selection list, except |
|
55 for the marking feature.</p> |
|
56 <p>Devices that have the optional Edit key perform these same functions by |
|
57 using the Edit key and arrow keys instead of the Hash (#) key.</p> |
|
58 <p>The user may access the <b>Options</b> menu to perform functions on all |
|
59 marked items at once. When user has one or more items marked, <b>Options</b> menu |
|
60 does not contain items that apply to one item only (such as <b>Open</b>). |
|
61 Exceptions are Help and Exit, which should appear in every <b>Options</b> menu. |
|
62 Appropriate error handling must be designed for functions that do not apply |
|
63 to some or all of the marked items.</p> |
|
64 <ul> |
|
65 <li><p>When executing a function, if any of the items are marked, all the |
|
66 marked items are affected by the function. If the focus is on an item that |
|
67 is not marked, the function does not affect that item. </p></li> |
|
68 <li><p>After the selected function is successfully done, all items are unmarked. |
|
69 In an error case, when the function cannot be applied, the marks should remain |
|
70 in place.</p></li> |
|
71 </ul> |
|
72 <p>The Options menu includes the marking and unmarking functions in a submenu |
|
73 so that any user can find the feature. The submenu has also the <b>Mark all</b> and <b>Unmark</b> all |
|
74 options.</p> |
|
75 <p>For other keypad actions, see <xref href="GUID-0822B030-E776-4BD5-B9C9-23D3821BCE1F.dita">Selection |
|
76 list</xref>.</p> |
|
77 <section><title>Using markable lists |
|
78 in C++ applications</title><p>The API to use for markable lists is the Lists |
|
79 API. For implementation information, see Using |
|
80 the Lists API.</p></section> |
|
81 </conbody></concept> |