21#ifndef __ctkAddRemoveComboBox_h
22#define __ctkAddRemoveComboBox_h
32#include "ctkWidgetsExport.h"
35class ctkAddRemoveComboBoxPrivate;
43 Q_PROPERTY(QString emptyText READ emptyText WRITE setEmptyText)
44 Q_PROPERTY(
bool addEnabled READ addEnabled WRITE setAddEnabled)
45 Q_PROPERTY(
bool removeEnabled READ removeEnabled WRITE setRemoveEnabled)
46 Q_PROPERTY(
bool editEnabled READ editEnabled WRITE setEditEnabled)
55 virtual
void printAdditionalInfo();
59 void setEmptyText(const QString& text);
60 QString emptyText()const;
64 void setComboBoxEnabled(
bool enable);
65 bool comboBoxEnabled()const;
69 void setAddEnabled(
bool enable);
70 bool addEnabled()const;
74 void setRemoveEnabled(
bool enable);
75 bool removeEnabled()const;
79 void setEditEnabled(
bool enable);
80 bool editEnabled()const;
82 inline
void addItem(const QString &text, const QVariant &userDataVariable = QVariant() )
83 {this->insertItem(this->count(), text, userDataVariable);}
84 inline void addItem(
const QIcon &icon,
const QString &text,
const QVariant &userDataVariable = QVariant() )
85 {this->insertItem(this->count(), icon, text, userDataVariable);}
86 inline void addItems(
const QStringList &texts )
87 {this->insertItems(this->count(), texts);}
89 void insertItem(
int index,
const QString &text,
const QVariant &userDataVariable = QVariant() );
90 void insertItem(
int index,
const QIcon &icon,
const QString &text,
const QVariant &userDataVariable = QVariant() );
101 int findText(
const QString& text, Qt::MatchFlags flags = Qt::MatchExactly | Qt::MatchCaseSensitive )
const;
102 int findData(
const QVariant & data,
int role = Qt::UserRole, Qt::MatchFlags flags = Qt::MatchExactly | Qt::MatchCaseSensitive )
const;
106 QVariant
itemData(
int index,
int role = Qt::UserRole)
const;
109 void setItemData(
int index,
const QVariant& data,
int role = Qt::UserRole);
115 {
return this->itemText(this->currentIndex());}
117 {
return this->itemData(this->currentIndex(), role);}
123 {this->removeItem(this->currentIndex());}
161 void onRowsAboutToBeRemoved(
const QModelIndex & parent,
int start,
int end);
162 void onRowsInserted(
const QModelIndex & parent,
int start,
int end);
163 void onRowsRemoved(
const QModelIndex & parent,
int start,
int end);
166 QScopedPointer<ctkAddRemoveComboBoxPrivate>
d_ptr;
QAbstractItemModel * model() const
void itemAboutToBeRemoved(int index)
void setCurrentIndex(int index)
QModelIndex rootModelIndex() const
QVariant itemData(int index, int role=Qt::UserRole) const
QString currentText() const
void insertItem(int index, const QString &text, const QVariant &userDataVariable=QVariant())
void currentIndexChanged(int index)
QScopedPointer< ctkAddRemoveComboBoxPrivate > d_ptr
void setRootModelIndex(const QModelIndex &root)
QVariant currentData(int role=Qt::UserRole) const
void itemAdded(int index)
void insertItem(int index, const QIcon &icon, const QString &text, const QVariant &userDataVariable=QVariant())
void activated(int index)
void setComboBox(QComboBox *comboBox)
void setItemText(int index, const QString &text)
void setItemData(int index, const QVariant &data, int role=Qt::UserRole)
QString itemText(int index) const
QWidget Superclass
Superclass typedef.
void addItem(const QIcon &icon, const QString &text, const QVariant &userDataVariable=QVariant())
void insertItems(int index, const QStringList &texts)
void addItems(const QStringList &texts)
void removeItem(int index)
void itemRemoved(int index)
int findText(const QString &text, Qt::MatchFlags flags=Qt::MatchExactly|Qt::MatchCaseSensitive) const
int findData(const QVariant &data, int role=Qt::UserRole, Qt::MatchFlags flags=Qt::MatchExactly|Qt::MatchCaseSensitive) const