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