File indexing completed on 2024-04-28 17:06:02
0001 /* 0002 SPDX-FileCopyrightText: 2005 Csaba Karai <krusader@users.sourceforge.net> 0003 SPDX-FileCopyrightText: 2005-2022 Krusader Krew <https://krusader.org> 0004 0005 SPDX-License-Identifier: GPL-2.0-or-later 0006 */ 0007 0008 #ifndef FILTERDIALOG_H 0009 #define FILTERDIALOG_H 0010 0011 #include "../FileSystem/krquery.h" 0012 #include "filtersettings.h" 0013 0014 // QtWidgets 0015 #include <QDialog> 0016 0017 class FilterTabs; 0018 class GeneralFilter; 0019 0020 class FilterDialog : public QDialog 0021 { 0022 Q_OBJECT 0023 0024 public: 0025 explicit FilterDialog(QWidget *parent = nullptr, const QString &caption = QString(), QStringList extraOptions = QStringList(), bool modal = true); 0026 KrQuery getQuery(); 0027 const FilterSettings &getSettings() 0028 { 0029 return settings; 0030 } 0031 void applySettings(const FilterSettings &s); 0032 bool isExtraOptionChecked(QString name); 0033 void checkExtraOption(QString name, bool check); 0034 0035 public slots: 0036 void slotCloseRequest(bool doAccept); 0037 void slotReset(); 0038 void slotOk(); 0039 0040 private: 0041 FilterTabs *filterTabs; 0042 GeneralFilter *generalFilter; 0043 FilterSettings settings; 0044 }; 0045 0046 #endif /* FILTERDIALOG_H */