File indexing completed on 2024-05-19 05:11:51
0001 /* 0002 SPDX-FileCopyrightText: 2014-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include "akonadisearchdebugsearchpathcombobox.h" 0010 #include "search_debug_export.h" 0011 #include <Akonadi/Item> 0012 #include <QWidget> 0013 class KLineEdit; 0014 class QPushButton; 0015 class QPlainTextEdit; 0016 namespace Akonadi 0017 { 0018 namespace Search 0019 { 0020 /** 0021 * @brief The AkonadiSearchDebugWidget class 0022 */ 0023 class AKONADI_SEARCH_DEBUG_EXPORT AkonadiSearchDebugWidget : public QWidget 0024 { 0025 Q_OBJECT 0026 public: 0027 explicit AkonadiSearchDebugWidget(QWidget *parent = nullptr); 0028 ~AkonadiSearchDebugWidget() override; 0029 0030 void setAkonadiId(Akonadi::Item::Id akonadiId); 0031 void setSearchType(AkonadiSearchDebugSearchPathComboBox::SearchType type); 0032 void doSearch(); 0033 0034 [[nodiscard]] QString plainText() const; 0035 0036 private Q_SLOTS: 0037 AKONADI_SEARCH_DEBUG_NO_EXPORT void slotSearchLineTextChanged(const QString &text); 0038 AKONADI_SEARCH_DEBUG_NO_EXPORT void slotSearch(); 0039 AKONADI_SEARCH_DEBUG_NO_EXPORT void slotResult(const QString &result); 0040 AKONADI_SEARCH_DEBUG_NO_EXPORT void slotError(const QString &errorStr); 0041 0042 private: 0043 QPlainTextEdit *const mPlainTextEditor; 0044 AkonadiSearchDebugSearchPathComboBox *const mSearchPathComboBox; 0045 KLineEdit *const mLineEdit; 0046 QPushButton *const mSearchButton; 0047 }; 0048 } 0049 }