File indexing completed on 2024-05-12 05:52:36
0001 /* 0002 SPDX-FileCopyrightText: 2015-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 0006 */ 0007 0008 #pragma once 0009 0010 #include "libkdebugsettings_export.h" 0011 #include "loggingcategory.h" 0012 #include <QWidget> 0013 class QPushButton; 0014 class QLineEdit; 0015 class KDEApplicationTreeView; 0016 class LIBKDEBUGSETTINGS_EXPORT KDEApplicationDebugSettingPage : public QWidget 0017 { 0018 Q_OBJECT 0019 public: 0020 explicit KDEApplicationDebugSettingPage(QWidget *parent = nullptr); 0021 ~KDEApplicationDebugSettingPage() override; 0022 [[nodiscard]] LoggingCategory::List rules(bool forceSavingAllRules) const; 0023 void insertCategories(const LoggingCategory::List &list); 0024 0025 void restoreToDefault(); 0026 0027 void forceFocus(); 0028 0029 protected: 0030 bool eventFilter(QObject *obj, QEvent *event) override; 0031 0032 private: 0033 LIBKDEBUGSETTINGS_NO_EXPORT void slotSelectAllDebug(); 0034 LIBKDEBUGSETTINGS_NO_EXPORT void slotDeselectAllDebug(); 0035 LIBKDEBUGSETTINGS_NO_EXPORT void slotDeselectAllMessages(); 0036 0037 QLineEdit *const mSearchLineEdit; 0038 QPushButton *const mEnableDebug; 0039 QPushButton *const mTurnOffDebug; 0040 QPushButton *const mTurnOffAllMessages; 0041 KDEApplicationTreeView *const mKdeApplicationTreeView; 0042 };