JS8Call-Improved master
Loading...
Searching...
No Matches
CheckableItemComboBox.h
1#ifndef CHECKABLE_ITEM_COMBO_BOX_HPP__
2#define CHECKABLE_ITEM_COMBO_BOX_HPP__
3
4#include "LazyFillComboBox.h"
5
6#include <QScopedPointer>
7
8class QStandardItemModel;
9class QStandardItem;
10
11class CheckableItemComboBox : public LazyFillComboBox {
12 Q_OBJECT
13
14 public:
15 explicit CheckableItemComboBox(QWidget *parent = nullptr);
16 QStandardItem *addCheckItem(QString const &label, QVariant const &data,
17 Qt::CheckState checkState);
18
19 protected:
20 bool eventFilter(QObject *, QEvent *) override;
21
22 private:
23 void update_text();
24
25 Q_SLOT void model_data_changed();
26 Q_SLOT void item_pressed(QModelIndex const &);
27
28 private:
29 QScopedPointer<QStandardItemModel> model_;
30};
31
32#endif