usbuis/usbuiqt/inc/usbmainview.h
author hgs
Fri, 23 Apr 2010 23:17:21 +0300
changeset 43 4712310216c0
permissions -rw-r--r--
201003
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
43
hgs
parents:
diff changeset
     1
/*
hgs
parents:
diff changeset
     2
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
hgs
parents:
diff changeset
     3
* All rights reserved.
hgs
parents:
diff changeset
     4
* This component and the accompanying materials are made available
hgs
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
hgs
parents:
diff changeset
     6
* which accompanies this distribution, and is available
hgs
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
hgs
parents:
diff changeset
     8
*
hgs
parents:
diff changeset
     9
* Initial Contributors:
hgs
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
hgs
parents:
diff changeset
    11
*
hgs
parents:
diff changeset
    12
* Contributors:
hgs
parents:
diff changeset
    13
*
hgs
parents:
diff changeset
    14
* Description: 
hgs
parents:
diff changeset
    15
*
hgs
parents:
diff changeset
    16
*/
hgs
parents:
diff changeset
    17
hgs
parents:
diff changeset
    18
#ifndef USBMAINVIEW_H
hgs
parents:
diff changeset
    19
#define USBMAINVIEW_H
hgs
parents:
diff changeset
    20
hgs
parents:
diff changeset
    21
#include <hbview.h>
hgs
parents:
diff changeset
    22
#include <QObject>
hgs
parents:
diff changeset
    23
hgs
parents:
diff changeset
    24
class UsbUiSettingModel;
hgs
parents:
diff changeset
    25
class QGraphicsLinearLayout;
hgs
parents:
diff changeset
    26
class HbListWidgetItem;
hgs
parents:
diff changeset
    27
class HbListWidget;
hgs
parents:
diff changeset
    28
class HbTextEdit;
hgs
parents:
diff changeset
    29
class HbRadioButtonList;
hgs
parents:
diff changeset
    30
hgs
parents:
diff changeset
    31
class UsbMainView : public HbView
hgs
parents:
diff changeset
    32
{
hgs
parents:
diff changeset
    33
    Q_OBJECT
hgs
parents:
diff changeset
    34
    friend class TestUsbUiModelActive;
hgs
parents:
diff changeset
    35
hgs
parents:
diff changeset
    36
public:
hgs
parents:
diff changeset
    37
    explicit UsbMainView( QObject *parent = 0 );
hgs
parents:
diff changeset
    38
    virtual ~UsbMainView();
hgs
parents:
diff changeset
    39
    
hgs
parents:
diff changeset
    40
public slots: 
hgs
parents:
diff changeset
    41
    /**
hgs
parents:
diff changeset
    42
     * Update view item(s) between the selected rows.
hgs
parents:
diff changeset
    43
     * @param topLeft The top row index
hgs
parents:
diff changeset
    44
     * @param bottomRight The bottom row index
hgs
parents:
diff changeset
    45
     */
hgs
parents:
diff changeset
    46
    void updateSettingItems(const QModelIndex &topLeft, const QModelIndex &bottomRight);
hgs
parents:
diff changeset
    47
    
hgs
parents:
diff changeset
    48
    /*
hgs
parents:
diff changeset
    49
     * Set the personality user has selected in the radio button list
hgs
parents:
diff changeset
    50
     * @param personalityIndex The selection index in the radio button list
hgs
parents:
diff changeset
    51
     */
hgs
parents:
diff changeset
    52
    void setPersonality( int personalityIndex );
hgs
parents:
diff changeset
    53
hgs
parents:
diff changeset
    54
signals:
hgs
parents:
diff changeset
    55
    
hgs
parents:
diff changeset
    56
private:
hgs
parents:
diff changeset
    57
    /*
hgs
parents:
diff changeset
    58
     * creates the main view window row by row
hgs
parents:
diff changeset
    59
     */
hgs
parents:
diff changeset
    60
    void createMainView();
hgs
parents:
diff changeset
    61
    /*
hgs
parents:
diff changeset
    62
     * creates the first row in the view containing an icon and a mode name
hgs
parents:
diff changeset
    63
     * @param  localPropertiesGroup main view layout
hgs
parents:
diff changeset
    64
     */
hgs
parents:
diff changeset
    65
    void createIconNameRow(QGraphicsLinearLayout *localPropertiesGroup);
hgs
parents:
diff changeset
    66
    /*
hgs
parents:
diff changeset
    67
     * creates the second row from the view containing the description of the selected mode
hgs
parents:
diff changeset
    68
     * @param  localPropertiesGroup main view layout
hgs
parents:
diff changeset
    69
     */
hgs
parents:
diff changeset
    70
    void createDescriptionArea(QGraphicsLinearLayout *localPropertiesGroup);
hgs
parents:
diff changeset
    71
    /*
hgs
parents:
diff changeset
    72
     * creates the third row from the view containing the radio button list of the existing usb modes
hgs
parents:
diff changeset
    73
     * @param  localPropertiesGroup main view layout
hgs
parents:
diff changeset
    74
     */
hgs
parents:
diff changeset
    75
    void createRadioButtonArea(QGraphicsLinearLayout *localPropertiesGroup);
hgs
parents:
diff changeset
    76
       
hgs
parents:
diff changeset
    77
private:
hgs
parents:
diff changeset
    78
    // main view layout owned by this class
hgs
parents:
diff changeset
    79
    QGraphicsLinearLayout *mMainLayout; 
hgs
parents:
diff changeset
    80
    // setting model not owned by the view,
hgs
parents:
diff changeset
    81
    // has to be deleted
hgs
parents:
diff changeset
    82
    UsbUiSettingModel *mModel;
hgs
parents:
diff changeset
    83
    //owned by the view
hgs
parents:
diff changeset
    84
    HbListWidgetItem *mListItem;
hgs
parents:
diff changeset
    85
    // owned by the view
hgs
parents:
diff changeset
    86
    HbListWidget *mlist;
hgs
parents:
diff changeset
    87
    // owned by the view
hgs
parents:
diff changeset
    88
    HbTextEdit *mlabel;
hgs
parents:
diff changeset
    89
    // owned by the view
hgs
parents:
diff changeset
    90
    HbRadioButtonList *mradio;
hgs
parents:
diff changeset
    91
    // not owned by the view
hgs
parents:
diff changeset
    92
    // need to be deleted
hgs
parents:
diff changeset
    93
    HbIcon *mIcon ;
hgs
parents:
diff changeset
    94
};
hgs
parents:
diff changeset
    95
hgs
parents:
diff changeset
    96
#endif /* USBMAINVIEW_H */