File indexing completed on 2024-04-28 16:44:52
0001 /* 0002 SPDX-License-Identifier: GPL-2.0-only 0003 SPDX-FileCopyrightText: 1999-2001 Lubos Lunak <l.lunak@kde.org> 0004 */ 0005 0006 #ifndef CONDITIONS_H 0007 #define CONDITIONS_H 0008 0009 #include "conditions/conditions_list_base.h" 0010 0011 #include "action_data/action_data_group.h" 0012 #include "windows_handler.h" 0013 0014 class KConfigGroup; 0015 0016 namespace KHotKeys 0017 { 0018 class Condition; 0019 0020 class Q_DECL_EXPORT Not_condition : public Condition_list_base 0021 { 0022 typedef Condition_list_base base; 0023 0024 public: 0025 Not_condition(Condition_list_base *parent = nullptr); 0026 Not_condition(KConfigGroup &cfg_P, Condition_list_base *parent_P); 0027 bool match() const override; 0028 void cfg_write(KConfigGroup &cfg_P) const override; 0029 Not_condition *copy() const override; 0030 const QString description() const override; 0031 const Condition *condition() const; 0032 bool accepts_children() const override; 0033 }; 0034 0035 class Q_DECL_EXPORT And_condition : public Condition_list_base 0036 { 0037 typedef Condition_list_base base; 0038 0039 public: 0040 And_condition(Condition_list_base *parent = nullptr); 0041 And_condition(KConfigGroup &cfg_P, Condition_list_base *parent_P); 0042 bool match() const override; 0043 void cfg_write(KConfigGroup &cfg_P) const override; 0044 And_condition *copy() const override; 0045 const QString description() const override; 0046 }; 0047 0048 class Q_DECL_EXPORT Or_condition : public Condition_list_base 0049 { 0050 typedef Condition_list_base base; 0051 0052 public: 0053 Or_condition(Condition_list_base *parent = nullptr); 0054 Or_condition(KConfigGroup &cfg_P, Condition_list_base *parent_P); 0055 bool match() const override; 0056 void cfg_write(KConfigGroup &cfg_P) const override; 0057 Or_condition *copy() const override; 0058 const QString description() const override; 0059 }; 0060 0061 } // namespace KHotKeys 0062 0063 #endif // #define CONDITIONS_H