JS8Call-Improved master
Loading...
Searching...
No Matches
CheckableItemComboBox.h
Go to the documentation of this file.
1
5
6#ifndef CHECKABLE_ITEM_COMBO_BOX_HPP__
7#define CHECKABLE_ITEM_COMBO_BOX_HPP__
8
9#include "LazyFillComboBox.h"
10
11#include <QScopedPointer>
12
13class QStandardItemModel;
14class QStandardItem;
15
16
26 Q_OBJECT
27
28 public:
33 explicit CheckableItemComboBox(QWidget *parent = nullptr);
34
42 QStandardItem *addCheckItem(QString const &label, QVariant const &data,
43 Qt::CheckState checkState);
44
45 protected:
49 bool eventFilter(QObject *, QEvent *) override;
50
51 private:
55 void update_text();
56
57 Q_SLOT void model_data_changed();
58 Q_SLOT void item_pressed(QModelIndex const &);
59
60 private:
61 QScopedPointer<QStandardItemModel> model_;
62};
63
64#endif
Lightweight QComboBox that emits signals when the popup is shown/hidden.
bool eventFilter(QObject *, QEvent *) override
Event filter to intercept model and item events.
Definition CheckableItemComboBox.cpp:59
CheckableItemComboBox(QWidget *parent=nullptr)
Construct the widget.
Definition CheckableItemComboBox.cpp:30
QStandardItem * addCheckItem(QString const &label, QVariant const &data, Qt::CheckState checkState)
Add a checkable item to the combobox model.
Definition CheckableItemComboBox.cpp:47
LazyFillComboBox(QWidget *parent=nullptr)
Construct a LazyFillComboBox.
Definition LazyFillComboBox.h:40