#ifndef MULTISELECTIONFILEDIALOG_H
#define MULTISELECTIONFILEDIALOG_H

#include <QObject>
#include <QFileDialog>
#include <QListView>
#include <QTreeView>
#include <QLineEdit>

class MultiSelectionFileDialog : public QFileDialog
{
    Q_OBJECT
public:
    MultiSelectionFileDialog(QWidget *parent = nullptr,
                             const QString &caption = QString(),
                             const QString directory = QString(),
                             const QString filter = QString());
    ~MultiSelectionFileDialog();
public:
    void setExtendedSelection();
    void setSingleSelection();
    void reset();
private slots:
    void slotsAccept();

private:
    QListView      *m_oListView;
    QTreeView      *m_oTreeView;
    QLineEdit      *m_oFileName;
};

#endif // MULTISELECTIONFILEDIALOG_H
