bluetoothengine/btnotif/inc/bluetoothdevicedialogs.h
author hgs
Wed, 29 Sep 2010 13:09:05 +0300
changeset 65 001a94c71129
parent 57 5ebadcda06cb
child 70 f5508c13dfe0
permissions -rw-r--r--
201037
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
29
48ae3789ce00 201017_2
hgs
parents:
diff changeset
     1
/*
48ae3789ce00 201017_2
hgs
parents:
diff changeset
     2
* ============================================================================
48ae3789ce00 201017_2
hgs
parents:
diff changeset
     3
*  Name        : bluetoothdevicedialogs.h
48ae3789ce00 201017_2
hgs
parents:
diff changeset
     4
*  Part of     : bluetoothengine / btnotif
48ae3789ce00 201017_2
hgs
parents:
diff changeset
     5
*  Description : Data structures for passing dialog type and formatting between btnotif and the UI component showing the actual dialogs. Also defines identifiers for Bluetooth device dialogs.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
     6
*
48ae3789ce00 201017_2
hgs
parents:
diff changeset
     7
*  Copyright © 2009 Nokia Corporation and/or its subsidiary(-ies).
48ae3789ce00 201017_2
hgs
parents:
diff changeset
     8
*  All rights reserved.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
     9
*  This component and the accompanying materials are made available
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    10
*  under the terms of "Eclipse Public License v1.0"
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    11
*  which accompanies this distribution, and is available
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    12
*  at the URL "http://www.eclipse.org/legal/epl-v10.html".
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    13
*
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    14
*  Initial Contributors:
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    15
*  Nokia Corporation - initial contribution.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    16
*
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    17
*  Contributors:
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    18
*  Nokia Corporation
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    19
* ============================================================================
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    20
* Template version: 4.2
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    21
*/
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    22
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    23
#ifndef BLUETOOTHDEVICEDIALOGS_H
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    24
#define BLUETOOTHDEVICEDIALOGS_H
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    25
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    26
#include <btdevice.h>
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    27
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    28
/**  Enumeration for the type of notification to be launched. */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    29
enum TBTDialogResourceId
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    30
    {
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    31
    ENoResource,
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    32
    EAuthorization,
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    33
    EIncomingPairing,
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    34
    EPinInput,
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    35
    ENumericComparison,
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    36
    EPasskeyDisplay,
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    37
    EObexPasskeyInput,
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    38
    ESetTrusted,
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    39
    EBlockUnpairedDevice,
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    40
    EBlockPairedDevice,
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    41
    EPairingSuccess,
47
9e2a905b887f 201029_02
hgs
parents: 42
diff changeset
    42
    EPairingFailureRetry,
9e2a905b887f 201029_02
hgs
parents: 42
diff changeset
    43
    EPairingFailureOk,
29
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    44
    EVisibilityTimeout,
42
hgs
parents: 31
diff changeset
    45
    EUnpairedDevice,
57
5ebadcda06cb 201035_7
hgs
parents: 47
diff changeset
    46
    EGenericInfo,
5ebadcda06cb 201035_7
hgs
parents: 47
diff changeset
    47
    EBluetoothTestMode,
5ebadcda06cb 201035_7
hgs
parents: 47
diff changeset
    48
    ESendCompleted,
5ebadcda06cb 201035_7
hgs
parents: 47
diff changeset
    49
    ESendCancelled,
5ebadcda06cb 201035_7
hgs
parents: 47
diff changeset
    50
    EIssueOfflineQuery,
29
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    51
    EUnusedResource	// The last ID
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    52
    };
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    53
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    54
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    55
/**
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    56
 *  TBluetoothDialogParams contains device dialog parameters except for device name and type
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    57
 *
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    58
 *  @since Symbian^4
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    59
 */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    60
NONSHARABLE_CLASS( TBluetoothDialogParams )
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    61
    {
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    62
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    63
public:
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    64
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    65
    /**  Enumeration for the type of notification to be launched. */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    66
    enum TBTDialogType
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    67
        {
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    68
        EInvalidDialog,
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    69
        ENote,
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    70
        EQuery,
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    71
        EInput,
31
a0ea99b6fa53 201019_1
hgs
parents: 29
diff changeset
    72
        EMoreDevice,
29
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    73
        EDeviceSearch,
31
a0ea99b6fa53 201019_1
hgs
parents: 29
diff changeset
    74
        ESend,
42
hgs
parents: 31
diff changeset
    75
        EGlobalNotif,
hgs
parents: 31
diff changeset
    76
        EUserAuthorization,
47
9e2a905b887f 201029_02
hgs
parents: 42
diff changeset
    77
        EReceiveProgress,
57
5ebadcda06cb 201035_7
hgs
parents: 47
diff changeset
    78
        EReceiveDone,
5ebadcda06cb 201035_7
hgs
parents: 47
diff changeset
    79
        EInformationDialog
29
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    80
        };
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    81
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    82
    /**  Enumeration for the notification parameters data type to be configured. */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    83
    enum TDialogDataType
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    84
        {
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    85
        ENoParams,
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    86
        EDialogType,
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    87
        EResource,
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    88
        EAddress,
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    89
        EDialogTitle,
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    90
        EDialogExt  // Id for first data type of derived class.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    91
        };
42
hgs
parents: 31
diff changeset
    92
    
hgs
parents: 31
diff changeset
    93
    /** Enumeration for the notification dialog heading type. */
hgs
parents: 31
diff changeset
    94
    enum TDialogTitleDataType
hgs
parents: 31
diff changeset
    95
        {
hgs
parents: 31
diff changeset
    96
        EReceive,
hgs
parents: 31
diff changeset
    97
        EReceiveFromPairedDevice,
hgs
parents: 31
diff changeset
    98
        EConnect,
47
9e2a905b887f 201029_02
hgs
parents: 42
diff changeset
    99
        EPairingRequest,
9e2a905b887f 201029_02
hgs
parents: 42
diff changeset
   100
        ERecvFailed,
9e2a905b887f 201029_02
hgs
parents: 42
diff changeset
   101
        ESendFailed,
57
5ebadcda06cb 201035_7
hgs
parents: 47
diff changeset
   102
        EReceiveCompleted,
5ebadcda06cb 201035_7
hgs
parents: 47
diff changeset
   103
        EBTAddress,
5ebadcda06cb 201035_7
hgs
parents: 47
diff changeset
   104
        EOfflineQuery,
5ebadcda06cb 201035_7
hgs
parents: 47
diff changeset
   105
        EMemoryFull,
5ebadcda06cb 201035_7
hgs
parents: 47
diff changeset
   106
        EFileMoved,
5ebadcda06cb 201035_7
hgs
parents: 47
diff changeset
   107
        EDriveNotFound,
5ebadcda06cb 201035_7
hgs
parents: 47
diff changeset
   108
        EUnsupportedImages
47
9e2a905b887f 201029_02
hgs
parents: 42
diff changeset
   109
        };
9e2a905b887f 201029_02
hgs
parents: 42
diff changeset
   110
    
9e2a905b887f 201029_02
hgs
parents: 42
diff changeset
   111
    enum TDialogActionType
9e2a905b887f 201029_02
hgs
parents: 42
diff changeset
   112
        {
9e2a905b887f 201029_02
hgs
parents: 42
diff changeset
   113
        EHide,
9e2a905b887f 201029_02
hgs
parents: 42
diff changeset
   114
        EShow,
9e2a905b887f 201029_02
hgs
parents: 42
diff changeset
   115
        ECancelReceive,
9e2a905b887f 201029_02
hgs
parents: 42
diff changeset
   116
        ECancelShow
42
hgs
parents: 31
diff changeset
   117
        };
29
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   118
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   119
    inline TBluetoothDialogParams();
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   120
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   121
public: // data
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   122
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   123
    /**
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   124
     * Identifier for the type of notification.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   125
     */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   126
    TInt iDialogType;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   127
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   128
    /**
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   129
     * Identifier for the resource to be shown in the dialog.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   130
     */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   131
    TInt iResourceId;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   132
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   133
    /**
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   134
     * Address of the remote device (not used, for future extension).
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   135
     */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   136
    TBTDevAddr iAddr;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   137
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   138
    /**
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   139
     * Unused padding (not used, for future extension).
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   140
     */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   141
    TUint32 iPadding;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   142
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   143
    };
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   144
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   145
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   146
/**
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   147
 *  TBluetoothDeviceDialog contains more device dialog parameters 
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   148
 *  
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   149
 *  @since Symbian^4
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   150
 */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   151
NONSHARABLE_CLASS( TBluetoothDeviceDialog ) : public TBluetoothDialogParams
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   152
    {
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   153
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   154
public:
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   155
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   156
    /**  Enumeration for the notification parameters data type to be configured. */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   157
    enum TDialogDataType
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   158
        {
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   159
        ENoParams = TBluetoothDialogParams::EDialogExt,
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   160
        EDeviceName,
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   161
        EDeviceClass,
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   162
        EAdditionalInt,
42
hgs
parents: 31
diff changeset
   163
        EAdditionalDesc,
hgs
parents: 31
diff changeset
   164
        EReceivingFileName,
hgs
parents: 31
diff changeset
   165
        EReceivingFileSize,
57
5ebadcda06cb 201035_7
hgs
parents: 47
diff changeset
   166
        EReceivedFileCount,
5ebadcda06cb 201035_7
hgs
parents: 47
diff changeset
   167
        ELocalAddress,
5ebadcda06cb 201035_7
hgs
parents: 47
diff changeset
   168
        EDriveLetter,
5ebadcda06cb 201035_7
hgs
parents: 47
diff changeset
   169
        EDriveName
29
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   170
        };
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   171
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   172
    inline TBluetoothDeviceDialog();
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   173
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   174
public: // data
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   175
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   176
    /**
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   177
     * The name of the remote device.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   178
     */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   179
    TBTDeviceName iDeviceName;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   180
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   181
    /**
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   182
     * The class of device of the remote device.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   183
     */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   184
    TInt iDeviceClass;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   185
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   186
    /**
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   187
     * Additional data depending on the resource.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   188
     */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   189
    TInt iIntParam;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   190
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   191
    /**
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   192
     * Additional data depending on the resource.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   193
     */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   194
    TBuf<10> iDescParam;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   195
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   196
    };
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   197
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   198
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   199
/**  Typedef'ed pckgbuf to send dialog parameters to the notification framework. */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   200
typedef TPckgBuf<TBluetoothDialogParams> TBluetoothDialogParamsPckg;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   201
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   202
/**  Typedef'ed pckgbuf to send dialog parameters to the notification framework. */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   203
typedef TPckgBuf<TBluetoothDeviceDialog> TBluetoothDeviceDialogPckg;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   204
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   205
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   206
inline TBluetoothDialogParams::TBluetoothDialogParams()
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   207
:   iDialogType( EInvalidDialog ),
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   208
    iResourceId( ENoResource ),
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   209
    iAddr( TBTDevAddr() ),
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   210
    iPadding( 0 )
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   211
    {
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   212
    }
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   213
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   214
inline TBluetoothDeviceDialog::TBluetoothDeviceDialog()
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   215
:   iDeviceName( 0 ),
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   216
    iDeviceClass( 0 ),
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   217
    iIntParam( 0 )
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   218
    {
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   219
    }
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   220
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   221
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   222
#endif // BLUETOOTHDEVICEDIALOGS_H