Line data Source code
1 : // Copyright (c) 2011-2013 The Bitcoin Core developers
2 : // Distributed under the MIT software license, see the accompanying
3 : // file COPYING or http://www.opensource.org/licenses/mit-license.php.
4 :
5 : #include "qvaluecombobox.h"
6 :
7 0 : QValueComboBox::QValueComboBox(QWidget *parent) :
8 0 : QComboBox(parent), role(Qt::UserRole)
9 : {
10 0 : connect(this, SIGNAL(currentIndexChanged(int)), this, SLOT(handleSelectionChanged(int)));
11 0 : }
12 :
13 0 : QVariant QValueComboBox::value() const
14 : {
15 0 : return itemData(currentIndex(), role);
16 : }
17 :
18 0 : void QValueComboBox::setValue(const QVariant &value)
19 : {
20 0 : setCurrentIndex(findData(value, role));
21 0 : }
22 :
23 0 : void QValueComboBox::setRole(int role)
24 : {
25 0 : this->role = role;
26 0 : }
27 :
28 0 : void QValueComboBox::handleSelectionChanged(int idx)
29 : {
30 0 : Q_EMIT valueChanged();
31 0 : }
|