39 if (e->type() == QEvent::FocusOut) {
40 QFocusEvent *
const f =
static_cast<QFocusEvent *
>(e);
42 if (o == lineEdit() && f->reason() == Qt::TabFocusReason) {
43 int index = findText(currentText());
46 setCurrentIndex(index);
51 if (f->reason() == Qt::PopupFocusReason)
54 if (f->reason() == Qt::ActiveWindowFocusReason) {
55 Q_EMIT textActivated(currentText());
59 if (f->reason() == Qt::MouseFocusReason) {
60 Q_EMIT textActivated(currentText());
65 Q_EMIT textActivated(currentText());
70 return QComboBox::eventFilter(o, e);
160 setFocusPolicy(Qt::WheelFocus);
166 m_comboBox->setInsertPolicy(QComboBox::NoInsert);
200 const int old_index =
m_comboBox->currentIndex();
201 int new_index = old_index + n;
210 if (new_index != old_index) {
218 if (!updatesEnabled())
221 setUpdatesEnabled(
false);
223 const QString key(
m_comboBox->itemText(index));
229 setUpdatesEnabled(
true);
233 BT_ASSERT(m_comboBox->lineEdit());
235 const QString text(m_comboBox->lineEdit()->text());
236 for (int index = 0; index < m_comboBox->count(); ++index) {
237 if (m_comboBox->itemText(index) == text) {
241 Q_EMIT focusOut(index);
250 m_isResetting =
false;