File indexing completed on 2024-05-05 10:08:44
0001 /* 0002 SPDX-FileCopyrightText: 2007 Nicolas Ternisien <nicolas.ternisien@gmail.com> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include <QAction> 0010 #include <QList> 0011 #include <QObject> 0012 0013 class LogModeAction : public QObject 0014 { 0015 Q_OBJECT 0016 0017 public: 0018 enum Category { RootCategory, ServicesCategory, OthersCategory }; 0019 0020 Q_DECLARE_FLAGS(Categories, Category) 0021 0022 explicit LogModeAction(QObject *parent = nullptr); 0023 0024 ~LogModeAction() override; 0025 0026 virtual QList<QAction *> innerActions() = 0; 0027 0028 virtual QAction *actionMenu() = 0; 0029 0030 void setCategory(Category category); 0031 0032 Category category() const; 0033 0034 private: 0035 LogModeAction::Category mCategory = LogModeAction::RootCategory; 0036 bool mInToolBar = true; 0037 };