2011-07-29 14:36:35 +02:00
|
|
|
#ifndef QVALUECOMBOBOX_H
|
|
|
|
#define QVALUECOMBOBOX_H
|
|
|
|
|
|
|
|
#include <QComboBox>
|
2012-05-08 23:03:41 +02:00
|
|
|
#include <QVariant>
|
2011-07-29 14:36:35 +02:00
|
|
|
|
2011-11-13 13:19:52 +01:00
|
|
|
/* QComboBox that can be used with QDataWidgetMapper to select ordinal values from a model. */
|
2011-07-29 14:36:35 +02:00
|
|
|
class QValueComboBox : public QComboBox
|
|
|
|
{
|
|
|
|
Q_OBJECT
|
2012-05-08 23:03:41 +02:00
|
|
|
Q_PROPERTY(QVariant value READ value WRITE setValue NOTIFY valueChanged USER true)
|
2011-07-29 14:36:35 +02:00
|
|
|
public:
|
|
|
|
explicit QValueComboBox(QWidget *parent = 0);
|
|
|
|
|
2012-05-08 23:03:41 +02:00
|
|
|
QVariant value() const;
|
|
|
|
void setValue(const QVariant &value);
|
2011-07-29 14:36:35 +02:00
|
|
|
|
2012-05-08 23:03:41 +02:00
|
|
|
/** Specify model role to use as ordinal value (defaults to Qt::UserRole) */
|
2011-07-29 14:36:35 +02:00
|
|
|
void setRole(int role);
|
|
|
|
|
|
|
|
signals:
|
|
|
|
void valueChanged();
|
|
|
|
|
|
|
|
public slots:
|
|
|
|
|
|
|
|
private:
|
|
|
|
int role;
|
|
|
|
|
|
|
|
private slots:
|
|
|
|
void handleSelectionChanged(int idx);
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif // QVALUECOMBOBOX_H
|