src/hbwidgets/widgets/hbcombobox.h
changeset 3 11d3954df52a
parent 2 06ff229162e9
child 5 627c4a0fd0e7
equal deleted inserted replaced
2:06ff229162e9 3:11d3954df52a
    55     };
    55     };
    56 
    56 
    57     explicit HbComboBox( QGraphicsItem *parent = 0 );
    57     explicit HbComboBox( QGraphicsItem *parent = 0 );
    58     virtual ~HbComboBox( );
    58     virtual ~HbComboBox( );
    59 
    59 
    60     enum { Type = Hb::ItemType_ComboBox };
    60     enum {
    61     int type( ) const { return Type; }
    61         Type = Hb::ItemType_ComboBox
       
    62     };
       
    63     int type( ) const {
       
    64         return Type; 
       
    65     }
    62 
    66 
    63     void addItem( const QString &text, const QVariant &userData = QVariant() );
    67     void addItem( const QString &text, const QVariant &userData = QVariant() );
    64     void addItem( const HbIcon &icon, 
    68     void addItem( const HbIcon &icon, const QString &text,
    65                   const QString &text,
    69         const QVariant &userData = QVariant( ) );
    66                   const QVariant &userData = QVariant( ) );
       
    67 
    70 
    68     void addItems( const QStringList &texts );
    71     void addItems( const QStringList &texts );
    69 
    72 
    70     void insertItem( int index, const QString &text, const QVariant &userData = QVariant() );
    73     void insertItem( int index, const QString &text, const QVariant &userData = QVariant() );
    71     void insertItem( int index,
    74     void insertItem( int index, const HbIcon &icon, const QString &text,
    72                      const HbIcon &icon,
    75         const QVariant & userData = QVariant( ) );
    73                      const QString &text,
       
    74                      const QVariant & userData = QVariant( ) );
       
    75     void insertItems( int index, const QStringList &texts );
    76     void insertItems( int index, const QStringList &texts );
    76 
    77 
    77     int count( ) const;
    78     int count( ) const;
    78 
    79 
    79     void setItems( const QStringList &texts );
    80     void setItems( const QStringList &texts );
    82     void setItemIcon( int index, const HbIcon &icon );
    83     void setItemIcon( int index, const HbIcon &icon );
    83     HbIcon itemIcon( int index ) const;
    84     HbIcon itemIcon( int index ) const;
    84 
    85 
    85     void setItemText( int index, const QString &text );
    86     void setItemText( int index, const QString &text );
    86     QString itemText( int index ) const;
    87     QString itemText( int index ) const;
    87             
    88 
    88     void setModel( QAbstractItemModel *model );
    89     void setModel( QAbstractItemModel *model );
    89     QAbstractItemModel *model( ) const;
    90     QAbstractItemModel *model( ) const;
    90     
    91 
    91     void setEditable( bool editable );
    92     void setEditable( bool editable );
    92     bool isEditable( ) const;
    93     bool isEditable( ) const;
    93 
    94 
    94     void setItemData( int index, const QVariant &value, int role = Qt::UserRole );
    95     void setItemData( int index, const QVariant &value, int role = Qt::UserRole );
    95     QVariant itemData( int index, int role = Qt::UserRole ) const;
    96     QVariant itemData( int index, int role = Qt::UserRole ) const;
    96 
    97 
    97     void setValidator( HbValidator *validator );
    98     void setValidator( HbValidator *validator );
    98     const HbValidator *validator( ) const;
    99     const HbValidator *validator( ) const;
    99     
   100 
   100     QString currentText( ) const;
   101     QString currentText( ) const;
   101     
   102 
   102     int currentIndex( ) const;
   103     int currentIndex( ) const;
   103     
   104 
   104     void removeItem( int index );
   105     void removeItem( int index );
   105 
   106 
   106     inline int findText( const QString &text,
   107     inline int findText( const QString &text,
   107         Qt::MatchFlags flags = Qt::MatchExactly|Qt::MatchCaseSensitive ) const
   108         Qt::MatchFlags flags = Qt::MatchExactly|Qt::MatchCaseSensitive ) const {
   108         { return findData( text, Qt::DisplayRole, flags ); }
   109             return findData( text, Qt::DisplayRole, flags );
   109         
   110     }
       
   111 
   110     int findData( const QVariant &data, int role = Qt::UserRole,
   112     int findData( const QVariant &data, int role = Qt::UserRole,
   111         Qt::MatchFlags flags = Qt::MatchExactly|Qt::MatchCaseSensitive ) const;
   113         Qt::MatchFlags flags = Qt::MatchExactly|Qt::MatchCaseSensitive ) const;
   112 
   114 
   113     QGraphicsItem *primitive( HbStyle::Primitive primitive ) const;
   115     QGraphicsItem *primitive( HbStyle::Primitive primitive ) const;
   114 
   116 
   116     void updatePrimitives( );
   118     void updatePrimitives( );
   117     void clear( );
   119     void clear( );
   118     void clearEditText( );
   120     void clearEditText( );
   119     void setCurrentIndex( int index );
   121     void setCurrentIndex( int index );
   120     void setEditText( const QString &text );
   122     void setEditText( const QString &text );
   121     
   123 
   122 signals:
   124 signals:
   123     void currentIndexChanged( int index );
   125     void currentIndexChanged( int index );
   124     void currentIndexChanged( const QString &text );
   126     void currentIndexChanged( const QString &text );
   125     void editTextChanged( const QString &text );
   127     void editTextChanged( const QString &text );
       
   128     void editingFinished( );
   126 
   129 
   127 protected:
   130 protected:
   128     HbComboBox( HbComboBoxPrivate &dd, QGraphicsItem *parent = 0 );
   131     HbComboBox( HbComboBoxPrivate &dd, QGraphicsItem *parent = 0 );
   129     void initStyleOption( HbStyleOptionComboBox *option ) const;
   132     void initStyleOption( HbStyleOptionComboBox *option ) const;
   130     void resizeEvent( QGraphicsSceneResizeEvent *event );
   133     void resizeEvent( QGraphicsSceneResizeEvent *event );