bluetoothengine/btnotif/btdevicedialogplugin/inc/btdevicesearchdialogwidget.h
author hgs
Mon, 03 May 2010 14:36:07 +0300
changeset 29 48ae3789ce00
child 31 a0ea99b6fa53
permissions -rw-r--r--
201017_2
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>
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    31
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    32
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    33
struct device
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    34
    {
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    35
    QString mDeviceName;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    36
    QString mDeviceType;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    37
    int     mDeviceIdx;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    38
    };
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    39
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    40
class BTDeviceSearchDialogWidget : public HbDialog,
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    41
                                public HbDeviceDialogInterface
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    42
    {
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    43
    Q_OBJECT
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    44
    
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    45
public:
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    46
    BTDeviceSearchDialogWidget(const QVariantMap &parameters);
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    47
    ~BTDeviceSearchDialogWidget();
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    48
    
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    49
public: // from HbDeviceDialogInterface
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    50
    bool setDeviceDialogParameters(const QVariantMap &parameters);
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    51
    int deviceDialogError() const;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    52
    void closeDeviceDialog(bool byClient);
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    53
    HbPopup *deviceDialogWidget() const;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    54
    
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    55
public slots:
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    56
    void stopClicked();
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    57
    void retryClicked();
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    58
//    void viewByClicked();
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    59
    void deviceSelected(const QModelIndex& modelIndex);
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    60
//    void viewByItemSelected(int index);
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    61
    
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    62
private:
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    63
    bool constructDialog(const QVariantMap &parameters);
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    64
    void hideEvent(QHideEvent *event);
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    65
    void showEvent(QShowEvent *event);
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    66
    void appendToDeviceList(const QString deviceName);
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    67
    bool appendToDeviceTypeList(const QString deviceType);
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    68
    QIcon icon();
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    69
    
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    70
signals:
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    71
    void deviceDialogClosed();
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    72
    void deviceDialogData(QVariantMap  data);
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    73
    
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    74
private:
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    75
    HbDocumentLoader *mLoader;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    76
    
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    77
    /**
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    78
     * 
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    79
     * item model for content list view.
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    80
     */
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    81
    
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    82
    QStandardItemModel* mContentItemModel;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    83
    HbDialog*           mViewByDialog;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    84
    HbRadioButtonList*  mRbl;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    85
    QList<QString>      mDeviceTypeList;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    86
    QList<device>       mDeviceList;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    87
    HbListView*         mListView;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    88
    bool                mViewByChosen;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    89
    QList<device>       mDeviceLstOfType;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    90
    int                 mDeviceLstIdx;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    91
    int                 mSelectedType;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    92
    int                 mDeviceDialogData;
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    93
    
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    94
    Q_DISABLE_COPY(BTDeviceSearchDialogWidget)
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    95
    };
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    96
48ae3789ce00 201017_2
hgs
parents:
diff changeset
    97
#endif /* BTDEVICESEARCHDIALOGWIDGET_H */