git-svn-id: svn://db.shs.com.ru/libs@258 a8b55f48-bf90-11e4-a774-851b48703e85

This commit is contained in:
2017-08-07 10:14:17 +00:00
parent f435f16667
commit 8d2b8c09ec
16 changed files with 1240 additions and 0 deletions

37
project_fs/filterdialog.h Normal file
View File

@@ -0,0 +1,37 @@
#ifndef FILTERDIALOG_H
#define FILTERDIALOG_H
#include "ui_filterdialog.h"
class FilterDialog: public QDialog, private Ui::FilterDialog
{
Q_OBJECT
public:
explicit FilterDialog(QWidget *parent = 0);
struct Filter {
Filter() {}
Filter(const QVariant & v);
QVariant toVariant() const;
bool filterFile(const QString & path) const {return filterLogic(files_show, files_hide, path);}
bool filterDir(const QString & path) const {return filterLogic(dirs_show, dirs_hide, path);}
QStringList files_show;
QStringList files_hide;
QStringList dirs_show;
QStringList dirs_hide;
private:
bool filterLogic(const QStringList & fshow, const QStringList & fhide, const QString & path) const;
};
Filter filter() const;
void setFilter(const Filter & f);
protected:
void changeEvent(QEvent *e);
QStringList getFilters(QLineEdit * le) const;
void setFilters(QLineEdit * le, QStringList f);
};
#endif // FILTERDIALOG_H