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 FILTERBASE_H 0009 #define FILTERBASE_H 0010 0011 #include "filtersettings.h" 0012 0013 // QtCore 0014 #include <QString> 0015 // QtWidgets 0016 #include <QComboBox> 0017 0018 class FilterTabs; 0019 0020 class FilterBase 0021 { 0022 public: 0023 virtual ~FilterBase() 0024 { 0025 } 0026 0027 virtual void queryAccepted() = 0; 0028 virtual QString name() = 0; 0029 virtual FilterTabs *filterTabs() = 0; 0030 virtual bool getSettings(FilterSettings &) = 0; 0031 virtual void applySettings(const FilterSettings &) = 0; 0032 0033 protected: 0034 static void setComboBoxValue(QComboBox *cb, QString value) 0035 { 0036 int idx = cb->findText(value); 0037 cb->setCurrentIndex(idx < 0 ? 0 : idx); 0038 } 0039 }; 0040 0041 #endif /* FILTERBASE_H */