File indexing completed on 2024-12-01 13:34:28

0001 #ifndef ACTION_VISITOR_H
0002 #define ACTION_VISITOR_H
0003 /**
0004  * SPDX-FileCopyrightText: 2009 Michael Jansen <kde@michael-jansen.biz>
0005  *
0006  * SPDX-License-Identifier: LGPL-2.0-or-later
0007  */
0008 
0009 namespace KHotKeys
0010 {
0011 class Action;
0012 class ActionList;
0013 class ActivateWindowAction;
0014 class CommandUrlAction;
0015 class DBusAction;
0016 class KeyboardInputAction;
0017 class MenuEntryAction;
0018 
0019 /**
0020  * @author Michael Jansen <kde@michael-jansen.biz>
0021  */
0022 class ActionVisitor
0023 {
0024 public:
0025     ActionVisitor();
0026     virtual ~ActionVisitor();
0027 
0028 private:
0029     virtual void visit(Action *) = 0 virtual void visit(ActionList *) = 0 virtual void visit(ActivateWindowAction *) = 0 virtual void visit(
0030         CommandUrlAction *) = 0 virtual void visit(DBusAction *) = 0 virtual void visit(KeyboardInputAction *) = 0 virtual void visit(MenuEntryAction *) = 0
0031 
0032         virtual void visit(Action *) const = 0 virtual void visit(ActionList *) const = 0 virtual void visit(ActivateWindowAction *)
0033             const = 0 virtual void visit(CommandUrlAction *) const = 0 virtual void visit(DBusAction *) const = 0 virtual void visit(
0034                 KeyboardInputAction *) const = 0 virtual void visit(MenuEntryAction *) const = 0
0035 }; // ActionVisitor
0036 
0037 } // namespace KHotKeys
0038 
0039 #endif /* ACTION_VISITOR_H */