bluetoothengine/btnotif/btdevicedialogplugin/inc/btdevicesearchdialogwidget.h
author hgs
Mon, 17 May 2010 11:06:23 +0300
changeset 31 a0ea99b6fa53
parent 29 48ae3789ce00
child 40 997690c3397a
child 42 b72428996822
permissions -rw-r--r--
201019_1
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
 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
48ae3789ce00 201017_2
hgs
parents:
diff changeset
     3
 * All rights reserved.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
     4
 * This component and the accompanying materials are made available
48ae3789ce00 201017_2
hgs
parents:
diff changeset
     5
 * under the terms of "Eclipse Public License v1.0""
48ae3789ce00 201017_2
hgs
parents:
diff changeset
     6
 * which accompanies this distribution, and is available
48ae3789ce00 201017_2
hgs
parents:
diff changeset
     7
 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
48ae3789ce00 201017_2
hgs
parents:
diff changeset
     8
 *
48ae3789ce00 201017_2
hgs
parents:
diff changeset
     9
 * Initial Contributors:
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    10
 * Nokia Corporation - initial contribution.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    11
 *
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    12
 * Contributors:
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    13
 *
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    14
 * Description:  
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    15
 *
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    16
 */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    17
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    18
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    19
#ifndef BTDEVICESEARCHDIALOGWIDGET_H
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    20
#define BTDEVICESEARCHDIALOGWIDGET_H
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    21
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    22
#include <QObject>
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    23
#include <QVariantMap>
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    24
#include <hbdialog.h>
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    25
#include <hbdevicedialoginterface.h>
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    26
#include <hbpopup.h>
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    27
#include <hbdocumentloader.h>
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    28
#include <qstandarditemmodel.h>
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    29
#include <hbradiobuttonlist.h>
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    30
#include <hblistwidget.h>
31
a0ea99b6fa53 201019_1
hgs
parents: 29
diff changeset
    31
#include <hbpushbutton.h>
a0ea99b6fa53 201019_1
hgs
parents: 29
diff changeset
    32
#include <hblabel.h>
29
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    33
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    34
struct device
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    35
    {
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    36
    QString mDeviceName;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    37
    QString mDeviceType;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    38
    int     mDeviceIdx;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    39
    };
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    40
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    41
class BTDeviceSearchDialogWidget : public HbDialog,
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    42
                                public HbDeviceDialogInterface
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    43
    {
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    44
    Q_OBJECT
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    45
    
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    46
public:
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    47
    BTDeviceSearchDialogWidget(const QVariantMap &parameters);
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    48
    ~BTDeviceSearchDialogWidget();
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    49
    
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    50
public: // from HbDeviceDialogInterface
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    51
    bool setDeviceDialogParameters(const QVariantMap &parameters);
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    52
    int deviceDialogError() const;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    53
    void closeDeviceDialog(bool byClient);
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    54
    HbPopup *deviceDialogWidget() const;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    55
    
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    56
public slots:
31
a0ea99b6fa53 201019_1
hgs
parents: 29
diff changeset
    57
    void stopRetryClicked();
29
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    58
    void retryClicked();
31
a0ea99b6fa53 201019_1
hgs
parents: 29
diff changeset
    59
    void viewByClicked();
29
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    60
    void deviceSelected(const QModelIndex& modelIndex);
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    61
//    void viewByItemSelected(int index);
31
a0ea99b6fa53 201019_1
hgs
parents: 29
diff changeset
    62
    void selectionDialogClosed(HbAction*);
29
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    63
    
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    64
private:
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    65
    bool constructDialog(const QVariantMap &parameters);
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    66
    void hideEvent(QHideEvent *event);
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    67
    void showEvent(QShowEvent *event);
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    68
    void appendToDeviceList(const QString deviceName);
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    69
    bool appendToDeviceTypeList(const QString deviceType);
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    70
    QIcon icon();
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    71
    
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    72
signals:
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    73
    void deviceDialogClosed();
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    74
    void deviceDialogData(QVariantMap  data);
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    75
    
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    76
private:
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    77
    HbDocumentLoader *mLoader;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    78
    
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    79
    /**
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    80
     * 
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    81
     * item model for content list view.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    82
     */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    83
    
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    84
    QStandardItemModel* mContentItemModel;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    85
    HbDialog*           mViewByDialog;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    86
    HbRadioButtonList*  mRbl;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    87
    QList<QString>      mDeviceTypeList;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    88
    QList<device>       mDeviceList;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    89
    HbListView*         mListView;
31
a0ea99b6fa53 201019_1
hgs
parents: 29
diff changeset
    90
    HbPushButton*       mStopRetryBtn;
a0ea99b6fa53 201019_1
hgs
parents: 29
diff changeset
    91
    HbPushButton*       mViewByBtn;
a0ea99b6fa53 201019_1
hgs
parents: 29
diff changeset
    92
    HbLabel*            mSearchLabel; 
a0ea99b6fa53 201019_1
hgs
parents: 29
diff changeset
    93
    HbLabel*            mSearchIconLabel;
a0ea99b6fa53 201019_1
hgs
parents: 29
diff changeset
    94
    HbLabel*            mSearchDoneLabel;
29
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    95
    bool                mViewByChosen;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    96
    QList<device>       mDeviceLstOfType;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    97
    int                 mDeviceLstIdx;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    98
    int                 mSelectedType;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    99
    int                 mDeviceDialogData;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   100
    
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   101
    Q_DISABLE_COPY(BTDeviceSearchDialogWidget)
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   102
    };
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   103
48ae3789ce00 201017_2
hgs
parents:
diff changeset
   104
#endif /* BTDEVICESEARCHDIALOGWIDGET_H */