epoc32/include/mw/touchlogicalfeedback.h
author William Roberts <williamr@symbian.org>
Wed, 31 Mar 2010 12:33:34 +0100
branchSymbian3
changeset 4 837f303aceeb
parent 2 2fe1408b6811
permissions -rw-r--r--
Current Symbian^3 public API header files (from PDK 3.0.h)
This is the epoc32/include tree with the "platform" subtrees removed, and
all but a selected few mbg and rsg files removed.
     1 /*
     2 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
     3 * All rights reserved.
     4 * This component and the accompanying materials are made available
     5 * under the terms of "Eclipse Public License v1.0"
     6 * which accompanies this distribution, and is available
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
     8 *
     9 * Initial Contributors:
    10 * Nokia Corporation - initial contribution.
    11 *
    12 * Contributors:
    13 *
    14 * Description:  Logical feedback type enumeration. 
    15 * Part of:      Tactile Feedback.
    16 *
    17 */
    18 
    19 
    20 #ifndef TOUCHLOGICALFEEDBACK_H
    21 #define TOUCHLOGICALFEEDBACK_H
    22 
    23 #include <e32std.h>
    24 
    25 /**  
    26  *  Pointer event types, that can be used when registering
    27  *  areas to registry. 
    28  */
    29 enum TTouchEventType
    30     {
    31     ETouchEventStylusDown,
    32     ETouchEventStylusUp,
    33     ETouchEventStylusPressDown,
    34     ETouchEventStylusPressUp
    35     };
    36     
    37 /**  
    38  *  Logical feedback types, that can be used when producing direct
    39  *  feedback, or when registering areas to area registry.
    40  *
    41  *  Notice, that client application cannot decide the actual physical
    42  *  feedback that shall be generated. It depends on device configuration,
    43  *  and current settings. In current devices the user changeable settings
    44  *  includes vibra and sound feedbacks.
    45  *
    46  *  Instructions for using these feedback types:
    47  *
    48  *  ETouchFeedbackNone      - Use for disabling feedback for some areas of
    49  *                            window when using area registry.
    50  *
    51  *  ETouchFeedbackBasic     - Use as default feedback for pen down events.
    52  *                            For example, pressing a button or tab.
    53  *
    54  *  ETouchFeedbackSensitive - Sensitive feedback for those situations,
    55  *                            where the triggering action is not very 
    56  *                            important (e.g. change focus in list), or when
    57  *                            there can be a large amount of feedbacks in
    58  *                            a short time (e.g. text selection which gives
    59  *                            feedback on every new selected character).
    60  *                            Also used for scrolling and dragging.
    61  *
    62  *  Different UI components have specific feedback types, which should be 
    63  *  used to maintain similar feedback behaviour in components of same type.
    64  *
    65  */
    66 enum TTouchLogicalFeedback
    67     {
    68     ETouchFeedbackNone = 0,
    69     ETouchFeedbackBasic,
    70     ETouchFeedbackSensitive,
    71     // New types for S60 5.2:
    72     ETouchFeedbackBasicButton = 0x100,    
    73     ETouchFeedbackSensitiveButton,
    74     ETouchFeedbackList,
    75     ETouchFeedbackSensitiveList,
    76     ETouchFeedbackBoundaryList,    
    77     ETouchFeedbackSlider,
    78     ETouchFeedbackEdit,
    79     ETouchFeedbackLineSelection,
    80     ETouchFeedbackBlankSelection,
    81     ETouchFeedbackTextSelection,
    82     ETouchFeedbackEmptyLineSelection,
    83     ETouchFeedbackTab,
    84     ETouchFeedbackPopUp,
    85     ETouchFeedbackIncreasingPopUp,
    86     ETouchFeedbackDecreasingPopUp,
    87     ETouchFeedbackFlick,
    88     ETouchFeedbackCheckbox,
    89     ETouchFeedbackSensitiveInput,
    90     ETouchFeedbackCharacterInputButton,
    91     ETouchFeedbackMultiTouchRecognized
    92     };
    93     
    94 /**  
    95  *  Logical feedback types for producing continuous feedback.
    96  *
    97  */
    98 enum TTouchContinuousFeedback
    99     {
   100     ETouchContinuousSmooth = 0x300, // For generic continuous feedback for custom controls
   101     ETouchContinuousSlider,
   102     ETouchContinuousInput,
   103     ETouchContinuousFlick
   104     };
   105     
   106 /**  
   107  *  Physical feedback types as bitmask.
   108  *
   109  */  
   110 enum TTouchFeedbackType
   111     {
   112     ETouchFeedbackAudio = 0x01,
   113     ETouchFeedbackVibra = 0x02
   114     };
   115 
   116 #endif // TOUCHLOGICALFEEDBACK_H