summaryrefslogtreecommitdiffstats
path: root/itemselectionwidget.h
blob: f78b9d141caa2e7a113ab6b4ed6cebf0f6ec8151 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#ifndef DIRSELECTIONWIDGET_H
#define DIRSELECTIONWIDGET_H

#include <QWidget>
#include <QIcon>

class QStandardItemModel;
class QListView;
class QLineEdit;

class ItemSelectionWidget : public QWidget
{
    Q_OBJECT
    public:
        enum Mode { Item, Directories };
        explicit ItemSelectionWidget(int mode, QString labelText, QWidget *parent = nullptr);
        const QStringList items() const;
        void setItems(const QStringList &items);

    public slots:
        void browseDir();
        void addItem();
        void removeItem();

    private:
        QStandardItemModel *mModel;
        QListView *mView;
        QLineEdit *mItem;
        QIcon mIcon;
};

#endif // DIRSELECTIONWIDGET_H