bluetoothengine/btui/btcpplugin/btcpuimainview.h
changeset 57 5ebadcda06cb
parent 47 9e2a905b887f
child 67 16e4b9007960
equal deleted inserted replaced
51:625f43ae9362 57:5ebadcda06cb
    18 #ifndef BTCPUIMAINVIEW_H
    18 #ifndef BTCPUIMAINVIEW_H
    19 #define BTCPUIMAINVIEW_H
    19 #define BTCPUIMAINVIEW_H
    20 
    20 
    21 #include "btcpuibaseview.h"
    21 #include "btcpuibaseview.h"
    22 #include <btqtconstants.h>
    22 #include <btqtconstants.h>
    23 #include <btuimodelsortfilter.h>
    23 #include <btdelegateconsts.h>
       
    24 #include "btcpuiviewmgr.h"
    24 
    25 
    25 class HbLabel;
    26 class HbLabel;
    26 class HbLineEdit;
    27 class HbLineEdit;
    27 class HbPushButton;
    28 class HbPushButton;
    28 class HbIcon;
    29 class HbIcon;
    32 class BtAbstractDelegate;
    33 class BtAbstractDelegate;
    33 class HbListView;
    34 class HbListView;
    34 class HbGroupBox;
    35 class HbGroupBox;
    35 class HbDataForm;
    36 class HbDataForm;
    36 
    37 
    37 class BtCpUiMainView : public BtCpUiBaseView
    38 class BtcpuiMainView : public BtcpuiBaseView, public BtcpuiViewMgr
    38 {
    39 {
    39     Q_OBJECT
    40     Q_OBJECT
    40 
    41 
    41 public:
    42 public:
    42     explicit BtCpUiMainView(
    43     
    43             BtSettingModel &settingModel, 
    44     explicit BtcpuiMainView(QGraphicsItem *parent = 0 );    
       
    45     
       
    46     explicit BtcpuiMainView(BtSettingModel &settingModel, 
    44             BtDeviceModel &deviceModel, 
    47             BtDeviceModel &deviceModel, 
    45             QGraphicsItem *parent = 0 );
    48             QGraphicsItem *parent = 0 );
    46     ~BtCpUiMainView();
    49     
    47     // from view manager
    50     ~BtcpuiMainView();
    48     void createViews();
       
    49 
    51 
    50     Qt::Orientation  orientation();
    52     // from base class BtcpuiBaseView
    51 
    53     virtual void activateView( const QVariant& value, bool backNavi);
    52     // from base class BtCpUiBaseView
    54     
    53     virtual void setSoftkeyBack();
       
    54     virtual void activateView( const QVariant& value, bool fromBackButton );
       
    55     virtual void deactivateView();
    55     virtual void deactivateView();
    56 
    56 
       
    57     virtual void createContextMenuActions(int majorRole);
       
    58     
    57 public slots: 
    59 public slots: 
    58     void changeOrientation( Qt::Orientation orientation );
    60     void changeOrientation( Qt::Orientation orientation );
    59     void changePowerState();
    61     void changePowerState();
    60     void visibilityChanged (int index);
    62     void changeVisibility(int index);
    61     void changeBtLocalName();
    63     void changeBtLocalName();
    62     
    64     
    63     void updateSettingItems(const QModelIndex &topLeft, const QModelIndex &bottomRight);
    65     void updateSettingItems(const QModelIndex &topLeft, const QModelIndex &bottomRight);
    64     void deviceSelected(const QModelIndex& modelIndex);
    66 
    65     void goToDiscoveryView();
    67     void launchDeviceDiscovery();
    66     void goToDeviceView(const QModelIndex& modelIndex);
    68     
    67     virtual void switchToPreviousView();
    69     void goToSearchView();
    68 
    70 
    69     //from delegate classes
    71     //from delegate classes
    70     void powerDelegateCompleted(int status);
       
    71     void visibilityDelegateCompleted(int status);
    72     void visibilityDelegateCompleted(int status);
    72     void btNameDelegateCompleted(int status, QVariant param);
    73     void btNameDelegateCompleted(int status);
    73     void allActionTriggered();
    74     void allActionTriggered();
    74     void pairActionTriggered();
    75     void pairActionTriggered(); 
       
    76     void menuActionTriggered(HbAction *action);
       
    77     virtual void viewByDialogClosed(HbAction* action);
    75     
    78     
    76 private slots:
    79     void disconnectAllDelegateCompleted(int status);
    77     void changeView(int targetViewId, bool fromBackButton, const QVariant& value = 0 );    
    80     void onRemoveQuestionDialogClosed(int action);
    78 
    81     void aboutToShowOptionsMenu();
       
    82     
       
    83     // returns the search view instance.
       
    84     BtcpuiBaseView *searchView();
       
    85     
       
    86     // From BtcpuiViewMgr
       
    87     BtcpuiBaseView *deviceView();
       
    88     
       
    89     void switchView(BtcpuiBaseView *from, BtcpuiBaseView *destination,
       
    90             const QVariant &init, bool backNavi);
       
    91     
    79 private:
    92 private:
    80     enum filterType {
    93     enum filterType {
    81         BtuiAll = 0,
    94         BtuiAll = 0,
    82         BtuiPaired
    95         BtuiPaired
    83     };
    96     };
    84     
    97     
    85 private:
    98 private:
       
    99     
       
   100     void loadDocument();
       
   101     
    86     VisibilityMode indexToVisibilityMode(int index);
   102     VisibilityMode indexToVisibilityMode(int index);
    87     int visibilityModeToIndex(VisibilityMode mode);
   103     int visibilityModeToIndex(VisibilityMode mode);
    88     BtCpUiBaseView * idToView(int targetViewId);
       
    89     
   104     
    90     //Functions to set the Previous Local settings in case of error
   105     //Functions to set the Previous Local settings in case of error
    91     void setPrevBtLocalName();
   106     void setPrevBtLocalName();
    92     void setPrevVisibilityMode();
   107     void setPrevVisibilityMode();
       
   108     void removeRegistryDevices(BtDelegate::EditorType type);
    93     
   109     
    94     void updateDeviceListFilter(BtCpUiMainView::filterType filter);
   110     void updateDeviceListFilter(BtcpuiMainView::filterType filter);
       
   111     
       
   112     void updateOptionsMenu();
    95     
   113     
    96 private:
   114 private:
    97 
   115 
       
   116     // search view. Owned
       
   117     BtcpuiBaseView *mSearchView;
       
   118     // device view. Owned.
       
   119     BtcpuiBaseView *mDeviceView;
       
   120     
    98     HbDocumentLoader *mLoader;
   121     HbDocumentLoader *mLoader;
    99 
   122 
   100     HbLineEdit *mDeviceNameEdit;
   123     HbLineEdit *mDeviceNameEdit;
   101     HbPushButton *mPowerButton;
   124     HbPushButton *mPowerButton;
   102     HbComboBox *mVisibilityMode;
   125     HbComboBox *mVisibilityMode;
   103     HbListView *mDeviceList;
   126     HbGridView *mDeviceList;
   104 
   127 
   105     Qt::Orientation mOrientation;
   128     Qt::Orientation mOrientation;
   106     
       
   107     // from view manager
       
   108     HbMainWindow* mMainWindow;
       
   109     BtCpUiBaseView* mMainView;
       
   110     BtCpUiBaseView* mDeviceView;
       
   111     BtCpUiBaseView* mSearchView;
       
   112     BtCpUiBaseView* mCurrentView;
       
   113     int mCurrentViewId;
       
   114     QList<int> mPreviousViewIds;
       
   115     
       
   116     //poiter to abstract delegate, and it is instantiated at runtime
       
   117     BtAbstractDelegate* mAbstractDelegate;
       
   118     BtuiModelSortFilter *mMainFilterModel;
       
   119     
   129     
   120     HbAction *mAllAction;
   130     HbAction *mAllAction;
   121     HbAction *mPairAction;
   131     HbAction *mPairAction;
   122     HbDataForm *mDataForm;
   132     HbDataForm *mDataForm;
   123     HbAction* mRemovePairedDevices;
   133     HbAction* mRemovePairedDevices;
   124     HbAction* mRemoveDevices;
   134     HbAction* mRemoveDevices;
   125     HbMenu* mSubMenu;
   135     HbMenu* mSubMenu;
       
   136     BtDelegate::EditorType mRemoveDevDelegateType;
       
   137     
   126 };
   138 };
   127 #endif // BTCPUIMAINVIEW_H 
   139 #endif // BTCPUIMAINVIEW_H